.pro文件解析
QT += core gui // QT包含的模块 GUI CORE
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets // 大于4版本包含widgets模块
TARGET = 01_First_Project // 生成的.exe文件名称
TEMPLATE = app // 模版 应用程序模版 Application
SOURCES += main.cpp\ // 源文件
widget.cpp
HEADERS += widget.h // 头文件
命名规范
类名首字母大写
变量名首字母小写,单词间首字母大写
快捷键
ctrl + / 注释
ctrl + r 运行
ctrl + b 编译
ctrl + i 自动对其
ctrl + shift + ↑ 整行移动
F1 帮助文档
F4 .cpp和.h文件之间切换
对象树
如果对象的父类是QObject或者其子类则不用管理内存释放操作,对象会被放到对象树中逐层释放。
信号和槽
信号发送方->信号接收方
优点:解耦合
// 参数1 信号的发送方 参数2 发送的信号 参数3 信号的接收者 参数4 处理的槽函数
connect(myBtn, &QPushButton::clicked, this, &QWidget::close);
模态对话框 / 非模态对话框
QDialog* dia = new QDialog(this);
dia->show(); // 非模态对话框
dia->exec(); // 模态对话框(阻塞),只允许操作当前窗口
dia->setAttribute(Qt::WA_DeleteOnClose); // 设置属性:关闭就删除对话框对象
Lambda表达式
[capture list] (parameter list) -> return type { function body }
// 实例
auto func = [](int a, int b) -> int { return a + b; };
其中,capture list用于捕获变量,可以是值传递[=]、引用传递[&]或隐式传递[ ]。parameter list用于定义函数的参数列表,可以为空。return type用于定义函数的返回值类型,可以为空。function body用于定义函数的实现,可以是一条语句或多条语句。
QT学习的简单笔记~~
文章介绍了QT项目的.pro配置文件,包括QT模块的添加,如coregui和widgets。讲解了TARGET和TEMPLATE的设定,以及源文件和头文件的声明。讨论了命名规范、快捷键效率以及对象树的概念,强调了信号和槽机制在解耦合中的作用。还提到了模态和非模态对话框的使用,并介绍了Lambda表达式的应用。

被折叠的 条评论
为什么被折叠?



