Qt项目文件的介绍
core和gui是需要的模块,一般不用更改,但是如果自己需要用到其他的,则可以自己添加
在QT4时,gui和widgets是一体的,但我的版本是5,所以在qt5中,对qt进行了更加细致的分类,把widgets单独分离出来
QApplication是Qt中的应用程序类,是一个标准类,对应着头文件
为了让用户看到一个窗口,所以创建一个窗口对象,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行