用Qt Creator创建一个带有ui文件的GUI Project
- 创建过程中Qt Creator会让我们选择这个窗口类是基于QMainWindow、QWidget还是QDialog;
- 得到5个文件,一个.pro文件,一个.ui文件,一个.h文件,两个.cpp文件(其中一个是main.cpp,其包含着Qt程序的入口函数main);
- 打开.h文件,看到如下一段声明: namespace Ui { class MainWindow;},在命名空间Ui里面有一个类叫MainWindow;
- 还会有一个Ui::MainWindow的私有指针,在对应的.cpp文件中找到这个Ui::MainWindow的描述的.h文件:#include "ui_mainwindow.h";
- 但是,没有build过的话,这个ui_mainwindow.h文件是找不到的;build一下这个Projec之后,我们就能看到这个文件了。
- 打开ui_mainwindow.h后,我们会看到Ui::MainWindow的描述:namespace Ui { class MainWindow: public Ui_MainWindow {};} // namespace Ui;这就是这个类的描述,而在它的上面就是Ui_MainWindow类的描述了,而这个Ui_MainWindow正是按着.ui文件的设计通过uic工具生成的。
ui文件:
- ui文件在Qt Designer中不能直接修改其源代码,只能通过Qt Designer的图形工具对其进行操作;
- ui文件用普通的文档编辑器打开时,其实是个自定义标签的XML文件;
- ui文件通过uic工具生成ui_xxxxxx.h文件;