如果工程过大时,就需要分子模块,Qt 也给我们提供了一种方式 Pri;

这里我们来看看Pri在项目中的使用,项目使用实际上也是很有主要可以模块清晰化,能提高程序的可扩展性。

网上这种写的很多,但少有写明白的,唉 !

Part1 : 主工程,可以有多个子工程,也可以称为子模块;

先创建 Qt的pro工程

Next ,Next,Completed, 生成项目;

二 、创建 pri子工程

1. 在源码目录下新建一个文件 subPri,在文件内新建一个SubPri.pri文件

2.将 pri 添加 到 pro

include(./SubPri/SubPri.pri)

保存后会显示

上面工程,已经出现了 subPri 文件夹,里面存在一个 Pri

3 .右击 SubPri 文件夹,添加新的 add new 选择 Dialog ; 选择添加到项目 SubPri.pri

点击完成  SubPri.pri 自动生成内容

FORMS += \$$PWD/subdialog.uiHEADERS += \$$PWD/subdialog.hSOURCES += \$$PWD/subdialog.cpp

4. 双击打开 Pro  ui 添加一个按钮,右击,选择 转到槽;

6. 将子模块添加进来显示

加头文件 :

#include"SubPri/subdialog.h"

添加内容

 SubDialog *sub = new SubDialog(this);sub->show();

Code:

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include"SubPri/subdialog.h"MainWindow::MainWindow(QWidget *parent) :QMainWindow(parent),ui(new Ui::MainWindow)
{ui->setupUi(this);
}MainWindow::~MainWindow()
{delete ui;
}void MainWindow::on_pushButton_clicked()
{SubDialog *sub = new SubDialog(this);sub->show();
}

8 编译,运行;弹出主窗口,点击 Button 弹出 子模块 窗口;

总结:

一般 如果 第三方库;或者原有的工程,都可以做为子模块加入;

一般情况也可以将主程序 分成各个子模块;如可分成 界面模块、通信模块、管理模块、配置模块

QT模块化编程 pro pri 子工程 使用相关推荐

  1. QT模块化编程 pri子工程创建以及使用 pro工程

    前言 Qt中的Pri文件在一般小型项目中其实很少能使用到的,不过,当你的项目需要多人参与直至团队协作时,Pri文件的作用就很大了,这里我们来看看Pri在大型项目中的使用,中小型项目使用实际上也是很有益 ...

  2. 单片机零基础入门(9-1)实战:模块化编程(模块化两个案例含源码--以及无法显示头文件(.h)的解决方案)

    单片机零基础入门(9-1)实战:模块化编程-(以及无法显示头文件(.h)的解决方案) 本文作为单片机零基础入门(8-5)模块化编程的拓展和补充,比前面的单片机零基础入门(8-5)模块化编程更为详细. ...

  3. QT中对Pro和Pri的解疑

    一.Pro部分 1.QT Pro的配置说明 文章的注释用 # 来注释 只能行注释QT += 是添加QT项目需要的模块 QT-=是排除或者移除某个模块HEADERS:指定C++头文件SOURCES:指定 ...

  4. Qt把已有工程添加到其他工程中作为子工程或新创建子工程

    Qt创建子工程 新建一个空工程 添加子工程 在当前工程下添加一个子工程 一个已有的qt工程,想添加到其他工程作为一个子工程,或是在当前工程中添加一个子工程,可以使用以下方法. 假设已有的工程为test ...

  5. QT——简单介绍 *.pro、*.pri、*.prf、*.prl四种文件

    *.pro qmake 的工程(project)文件,这个大家肯定都非常熟悉了.那我就不费话了,上例子: 这是一个典型的Qt示例程序的.pro文件(propriprfprl.pro): TEMPLAT ...

  6. Qt 5入门指南之Qt Quick编程示例

    Qt 5入门指南之Qt Quick编程示例 使用Qt创建应用程序是十分简单的.考虑到你的使用习惯,我们编写了两套教程来实现两个相似的应用程序,但是使用了 不同的方法.在开始之前,请确保你已经下载了Qt ...

  7. QT项目之创建.pri文件

    QT项目之创建.pri文件: https://www.cnblogs.com/xiangtingshen/p/11009627.html 怎么创建pri文件: 第一步:用Qt新建你需要的项目(假如所在 ...

  8. 真正的模块化编程原来是这样的!

    已剪辑自: https://mp.weixin.qq.com/s/uo4tnsEnpULAruayZHcKAw 随着我们工程化经验的增加,不知不觉的我们就会关心到这个问题,模块化,模块设计就显现出来, ...

  9. Qt Creator的pro文件格式

    下面是转载的文章,强烈建议所有的Qt开发人员都看一遍. 学习到这篇文档是因为我想一次配置好pro文件,然后就能自动编译出debug和release的版本了. 其实关键就是 CONFIG += debu ...

最新文章

  1. 大数据概念思维导图_思维导图|数据化风控(信用评分建模教程)
  2. js知识点 掘金_关于webpack4的14个知识点,童叟无欺
  3. 流程的python-流畅的Python
  4. linux 单引号,双引号,反引号的小总结。
  5. Handler消息处理机制
  6. 用Spring Security实现后台登录及权限认证功能
  7. 【竞赛相关】Kaggle活跃竞赛(12月汇总)
  8. 【算法知识】详解归并排序算法
  9. python import 文件路径_python之import子目录文件
  10. 使用C++实现YUV格式图像与RGB格式图像之间相互转换
  11. Nacos(一)之简介
  12. Shell入门(二)之变量
  13. python将json转换为excel_使用python将Excel转换为JSON_python_酷徒编程知识库
  14. html 选中状态,html默认选中状态
  15. win10子系统 php,启用 Win10 的 Linux 子系统
  16. maven私服搭建:docker安装Sonatype Nexus以及寻找admin用户对应的随机初始密码
  17. 克莱姆法则(cramer法则)详解
  18. Eclipse安装SVN插件最新版本 Subclipse
  19. Android 自定义实现倒三角图片
  20. 三星S6D1121主控彩屏(240*320*18bit,262K)驱动程序

热门文章

  1. 极客日报:消息称字节国内收入降速,抖音收入停止增长;小鹏汽车创始人回应品牌名称太土;TypeScript 4.5正式版发布
  2. i计算机应用基础中情境教学,情境教学法在计算机应用基础教学中的应用分析...
  3. 商业价值:谷歌娱乐影音之路上的硬件产品
  4. xml的数据交换以及xml和json数据交换的比较
  5. 谈android界面设计
  6. Mac电脑如何重启剪贴板?
  7. C语言中的bool变量
  8. 面试重点-vue原理
  9. 有向图的入度与出度的关系(摘要)
  10. 百度首席财务官海南休假意外溺亡