Qt工作笔记-qmake和uic(对Qt底层的进一步认识)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq78442761/article/details/90176519

目录

背景

以前的认识

今天的认识


背景

今天一大佬问了我个问题,就是uic程序编译ui生成.h文件后改怎么用!

当时我就有点蒙蔽了!

一般情况下来说,qmake会把ui文件生成.h文件,为什么会冒出一个uic程序。

还有,一般情况下,不是直接用一个类继承QWidget或QMainWindow或QDialog,里面有个头文件的对象,直接用就可以了。

为何会有这些问题呢?

原来那位大佬不太喜欢工具!

那位大佬想一步一步体验编译器帮开发者干的活。

大佬就是不一样。我也受教了,并且对Qt又有了进一步的认识;

以前的认识

在Windows上,本人通常是使用vs或者QtCreator去开发程序。基本上编译运行就可以了。

在Linux,部署好后,修改下pro文件,一个qmake再来个qmke,完事。

根本就不知道啥是uic。

当时任务qmake把ui文件转换问C++看得懂的文件。

而现在又有了进一步认识;

今天的认识

以前的认识并没有错,只是不够深;

qmake会去调用uic程序把ui文件转换为.h文件;

如下:

这个是QtCreator的编译输出。

下面来看看uic是什么:

User Interface Compiler (uic):用户界面编译

用Qt的Widgets模块去编译,可见qml并不再其中;uic读取ui文件,也就是xml文件,从而把他编译为C++看得懂的.h文件;

代码:

  uic [options] <uifile>

uic程序的参数:

如果使用qmake,uic将被头文件自动包含,对应的Makefile文件如下:

  ui_%.h: %.ui
          uic $< -o $@

猜你喜欢

转载自blog.csdn.net/qq78442761/article/details/90176519