QT优点: 跨平台,接口简单,一定程度简化内存回收。 比如谷歌地图,linux桌面环境都是QT实现的。
第一个小程序。 创建项目后, 要创建一个默认的类。有三种选择。 有QWidget,QMainWindow,QDialog。其中第一个类是父类,其他两个是继承第一个。第一个就是什么都没有的一个窗口,第二个是有菜单栏,状态栏等的窗口,第三个是对话框。
创建完成后会有三个文件和一个pro项目,分别是mywidget.h,mywidget.cpp, main.cpp. 其中main函数是入口,QApplication a是一个应用程序对象,有且只有一个。 mywidget w是窗口对象。 w.exec()用来执行无限循环,使窗口不会一闪而过。
一些快捷键 crtl+/ 多行注释 crtl+r 运行 crtl+b 编译 crtl+鼠标滚轮 字体缩放 crtl+i 自动对齐
2.按钮功能的添加(QPushbutton) 首先我们可以用帮助文档搜关键字,然后就会告诉你QPushButton使用的注意事项,比如要包含什么头文件,父类是谁,子类是谁。
里面要注意的都写在注释里了。
值得注意的是里面new的按钮并没有释放操作,但是他也会释放,这就是为什么说内存回收机制。这是因为对象树的存在。 我们在学C++的时候,我们知道子类构造的时候会调用父类的构造函数,子类析构的时候也会调用父类的析构函数。 在qt中,QObject是最基本的类,它的子类有QWidget,也就是一个个窗口,接下来是控件,比如这里的QPushButton,接下去是更小的控件。我们在销毁窗口(QWidget)的时候,QWidget的析构函数会自动调用子类的析构函数,所以不用我们自己delete。顺序和C++中一样,先调用子类析构函数,再调用基类(QWidget类)析构函数。
|