在Qt Creator窗口小部件模板中了解ui_mainwindow.h的位置

时间:2014-10-24 12:44:53

标签: qt qt-creator

我正在用Qt Creator编写我的第一个应用程序,并且我已经加载了默认的小部件模板。在mainwindow.cpp中,有一行#include "ui_mainwindow.h"。但是,此文件尚不存在。编译代码后,我注意到构建文件夹中有一个名为ui_mainwindow.h的文件。

有人可以解释这里发生了什么吗?似乎可能存在两阶段构建过程,一个用于构建用户界面文件(即ui_mainwindow.h),然后用于构建实际程序。在这种情况下,如果此头文件放在构建目录中,为什么它是#include "ui_mainwindow.h"而不是#include "../build/ui_mainwindow.h"

1 个答案:

答案 0 :(得分:4)

ui构建器在“uic.exe”解析您的.ui表单文件(您在主窗口中拖放小部件后)创建的内容。还有其他工具可以解析头文件以创建保存信号和插槽功能的moc_*.cpp文件。

它可以使用#include "ui_mainwindow.h",因为在编译期间,构建工具会将构建文件夹添加到include目录中。并且构建目录可能会更改,例如您为发布版本选择另一个构建文件夹。