Qt Creator学习
前段时间学习Qt做上位机,一直没来得及记录,今天把当初学习的东西再复习一遍。
1.创建界面的基类
QMainWindow:主窗口类,包括主菜单栏、工具栏、状态栏。
QWidget:所有可视界面类的基类。
QDialog:对话框类。
2.属性之间继承关系
QObject -> QWidget -> QFrame -> QLabel
3.基础窗口部件
QWidget:继承自QObject(所有对象模型基类) 和 QPaintDevice(所有可绘制对象基类)。
4.常用窗口部件
| 部件 | 解释 |
|---|---|
| QLabel | 显示文本、图片 |
| QPushButton | 标准按钮 |
| QRadioButton | 单选框按钮 |
| QToolButton | 工具按钮 |
| QCheckBox | 复选框 |
| QLineEdit | 具有显示、输入、自动补全功能 |
| QDateTimeEdit | 日期时间设定 |
| QSpinBox | 整数设定 |
| QDoubleSpinBox | 浮点数设定 |
| QScrollBar | 滚动条 |
| QSlider | 音量进度滑块 |
| QDial | 刻度表盘 |
5.基本布局与属性
| 布局管理器QLayout | QBoxLayout | QHBoxLayout | 水平布局 |
| QVBoxLayout | 垂直布局 | ||
| QGridLayout | 网格布局 | ||
| QFormLayout | 窗体布局 | ||
| QStackedLayout | 栈布局 | ||
| 基本属性QsizePolicy | |||
| Fixed | 固定大小 | ||
| Minimum | 最小尺寸,可拉伸 | ||
| Maximum | 最大尺寸,可压缩 | ||
| Prefered | 可拉伸压缩 | ||
| Expanding | 倾向于拉伸 | ||
| Ignored | 尽可能拉伸 | ||
6.应用程序窗口组件
菜单栏:包含下拉菜单,只能有一个。
工具栏:常用菜单项目。
中心部件:功能实现区,只能有一个。
Dock部件:停靠窗口。
状态栏:状态信息,只能有一个。
7.分裂器
QSplitter:可完成布局功能,放入分裂器内控件可以通过拖动边界控制大小。
8.伙伴
buddy:提供助记符来设置键盘焦点到对应部件上。
9.信号与槽
首先在.h文件中写上槽函数的声明:
public slots:
void SoltFunction();
在.cpp文件中槽函数的实现:
void Demo::SoltFunction()
{
QDialog *dialog = new QDialog(this);
dialog -> show();
}
最后在.cpp文件的Demo类的构造函数内使用connect()关联:
Demo::Demo(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
connect(ui->showChildButton, &QPushButton::clicked,
this, &Demo::SoltFunction);
//connect中4个函数分别是:发送信号对象,发送信号类型
//接收信号对象,要执行的槽函数
}
10.事件
| QEvent | QDropEvent | QDrogMoveEvent | 提供同时拖放动作正在进行被发送的事件 |
| QDrogEnterEvent | 提供当拖放动作进入它被发送到一个微件的事件 | ||
| QCloseEvent | 关闭事件 | ||
| QInputEvent | QKeyEvent | 键盘输入事件 | |
| QMouseEvent | 鼠标输入事件 | ||
| QTimerEvent | 定时器事件 | ||
事件的传递顺序:事件过滤器 -> 部件event()函数 -> 部件事件处理函数。
11.风格设置
工具 -> FormEditor -> Preview in
包括三种风格:windowsvista,windows,Fusion
12.程序发布
首先,目标选择器设置为release,运行后生成release文件;
接下来,新建一个文件夹,并将release文件中的.exe文件复制过来;
打开命令提示符界面,转到新建文件夹下输入:windeployqt 程序名.exe,再回车即可。
本文是作者学习Qt Creator做上位机的复习记录。涵盖创建界面基类,如QMainWindow、QWidget等;介绍属性继承关系、窗口部件、布局与属性等内容;还涉及分裂器、伙伴、信号与槽、事件、风格设置及程序发布的方法。
443

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



