Qt项目文件的介绍

core和gui是需要的模块,一般不用更改,但是如果自己需要用到其他的,则可以自己添加

在QT4时,gui和widgets是一体的,但我的版本是5,所以在qt5中,对qt进行了更加细致的分类,把widgets单独分离出来

QApplication是Qt中的应用程序类,是一个标准类,对应着头文件,他创建了一个应用程序的对象,在一个Qt应用程序中,该对象有且只有一个,像我们在对应用进行拖动点击,这些都是QApplication维持的事件循环,exec是个阻塞函数,让程序进入事件循环

为了让用户看到一个窗口,所以创建一个窗口对象,MainWindow,之后把和这个窗口show出来

QMainWindow是Qt的一个标准窗口类,我们继承了这个类,说明我们也会有它的一些属性

Ui是个命名空间,说里面有个同名的类,也叫作MainWindnow,其实这个MainWindow是对应ui文件中的类,把ui文件用普通文本器打开,会发现里面会有个MainWindnow

既然第7行,和10行,都有MainWindow,那我们肯定得让他们发生关联

第19行我们发现定义了一个Ui界面的MainWindow类型的指针,那这指针肯定要用啊,怎么用呢

我们跳到头文件对应的源文件中,也就是mainwindo.cpp

我们看他的初始化过程中,第6行的第一个ui是我们刚才定义的ui指针,后面的括号里new说明,这个指针被实例化了,既然这个指针被实例化了,那就说明我们最终看到的窗口被实例化了,也就是mainwindow.ui被实例化了,只有它被实例化后,才能够被展现,所以在这个cpp中,我们的ui界面就被实例化出来

再看第8行,this是当前咱们MainWindow(第4行的第一个)这个类的实例对象,通过这个setupUi,我们就把当前两个同名类的不同对象给捆绑在一起了

ui->setupUi(this)就是把咱们这个ui对象设置给了this指针指向的实例对象,也就是把他俩捆绑了,捆绑之后,我们就可以在MainWindow(第4行的第一个)这个类中,对Ui的界面做一些操作

因为我们在构造函数中创建了这个对象,也就是第6行,所以我们关闭窗口时候,就会自动调用析构函数把ui界面的那个内存释放掉,也就是第13行

posted @ 2023-03-16 17:13  朱英浩  阅读(61)  评论(0编辑  收藏  举报