今天学习QT特性
图形界面开发 (兼容js)
基于C++的跨平台(不同的操作系统)
到处编译 到处运行
开源的(感谢诺基亚)
得到了广泛的社区支持
QT Widgets Application QT窗口程序
QT Console Application QT控制台程序
QMake CMake:
继承于Makefile (项目中的pro文件)
Makefile基于: (可以理解为一个脚本程序) 做: 预处理 预编译 编译 链接等等
Gcc或者g++程序 :以命令形式存在
Gcc: 用于编译,链接(纯粹的编译器,仅仅只做编译链接)
而像vs等软件叫集成编译环境
QT模块部件(图二)
1.pro文件
QT += core gui
#高于QT4的QT版本
greaterThan(QT_MAJOR_VERSION,4): QT += widgets
#添加cpp文件
SOURCES += \
main.cpp
#添加一个类会自动添加一个.h文件
HEADERS += \
myclass.h
2.主函数
int main(int argc,char* argv[])
{
//创建一个QApplication对象
QApplication a(argc,argv);
//创建一个窗口对象
QWidget w;
//设置窗口标题
w.setWindowTitle("这是标题");
//显示窗口
w.show();
//exec()是一个阻塞函数(卡住窗口)
//程序返回QApplication对象a的exec函数的返回值
return a.exec();
}
注意: QT不用管释放问题(自动释放机制)
关联按钮窗口和Widget窗口
设置按钮窗口为MainWidget窗口的子窗口
设置MainWidget窗口为按钮窗口的父窗口
设置w为*btn的父对象