QT day2

【QPushButton的几个信号】
clicked:被点击发射的信号,按下去并且抬起来这个完整的动作就是点击。
released:释放按钮发射的信号,释放包括两种情况:
            1.抬起来   2.按下去移开
pressed:按压按钮发射的信号。
toggled:后面讲

【Qt命名规范】
1.禁止使用中文和特殊标点符号
2.禁止使用数字开头
3.类名使用大驼峰命名法(每个单词的首字母大写),不要用Q开头。
4.属性(成员变量)、函数命名使用小驼峰命名法(第一个单词全小写,其它单词首字母大写)
5.尽量做到见名知意

【信号槽注意点(掌握)】
1.信号和槽优先从文档中查找,如果没有合适的再自定义。
2.槽函数本身也是一个成员函数,可以被直接调用。
3.信号函数也是函数,但是不能被直接调用。
4.信号槽传递参数可以传递任意个数的参数,但是绝大多数情况只传递一个参数。
5.信号的参数个数必须大于等于槽的参数个数。
6.参数的类型必须一一匹配
7.同一个信号可以连接到多个槽函数(一对多),但是是一种性能的浪费,尽量减少这种使用。
8.多个信号可以连接到同一个槽函数(多对一)。

【UI Designer(掌握)】
Designer程序是交互式的GUI设计工具,可以帮助开发者快速开发Qt的界面。

它生成的文件是.ui格式的。

把用户可视化的拖拽 → .ui格式的xml代码 → C++代码

如果要使用Designer程序,创建项目的时候需要选中“创建界面”的勾选。

Designer中红色的显示表示实际运行不可见。

Designer中预览的效果并不一定是实际的效果。

【布局 Layout】
可以把布局看成是一个透明的箱子,内部可以按照某种规律排布控件。

1、垂直布局:内部的控件竖着排成一排(掌握)
Vertical Layout | QVBoxLayout
2、水平布局:内部的控件水平排成一排(掌握)
Horizontal Layout | QHBoxLayout
3、格栅布局:内部的控件按照表格排布
Grid Layout | QGridLayout
4、Form Layout | QFormLayout

如果不想要布局了,可以使用打破布局。

常用属性(熟悉):
layout方向Margin —— 某个方向的边距
layoutSpacing —— 布局中控件之间的间距
layoutStretch —— 垂直布局可以按照比例分高度;
                  水平布局可以按照比例分宽度。
                  注意:比例有多个影响因素。

实际开发过程中,布局通常会嵌套使用,此时内层的布局和其子控件可以看做是一个整体。
布局的嵌套应该越少越好。

【伸展器 Spacer(掌握)】
Horizontal Spacer(水平)
Vertical Spacer  (垂直)

【QSizePolicy 大小策略(了解)】
关于QPushButton宽度和高度的区别。
宽度:Minimum——可以放大,但是只能缩小到设定的最小值。
高度:Fixed——不可改变
通常不建议新手改变控件预设的SizePolicy

【C++布局(了解)】
布局也可以完全使用C++代码完成,但是采用纯代码的方式实现UI界面是比较复杂的。

【Designer信号槽(了解)】
在Designer中,点击键盘F4可以进入信号槽编辑模式,信号槽的连接变为简单的拖拽。
这种模式下,只能使用自带的信号和槽函数。

退出此模式点击F3。

在Designer中选中发射者,鼠标右键,点击“转到槽”。
在弹出的窗口中选中信号函数后,会自动在C++代码中生成槽函数。
这个槽函数不需要连接(自动连接),此槽函数的命名遵循以下规范:
on_发射者对象名称_信号函数
Qt会把以上命名规范的槽函数自动连接,因此手写槽函数的时候不要使用上面的命名规范。

注意:
在实际的开发过程中,禁止使用Designer设计信号槽。
因为使用此方法会导致信号与槽的对应关系不明确,影响代码的阅读性。
后续仍然采用手动连接信号槽的编写风格。

-----------------------从此往后,新建项目一律选中“创建界面”-------------------------

【ui指针(掌握)】
可以认为ui指针就是.ui文件的对象。
ui指针在C++代码中统一管理.ui文件中控件的对象。

【QWidget属性(熟悉)】
minimumSize        最小尺寸
maximumSize        最大尺寸
当最小尺寸=最大尺寸时,控件宽或高不可变。
font            字体

【QAbstractButton(掌握)】
此类是按钮类的抽象基类,规定了按钮的一些基础功能。

部分属性:
text : QString —— 按钮显示的文字
checkable : bool —— 是否可选中
checked : bool —— 是否已选中
void    toggled(bool checked) —— checked值发生改变时发射的信号

QAbstractButton有以下派生类:
1.QPushButton
按压式的命令按钮,默认不可选,用于点击。
2.QRadioButton
单选按钮,位于一个层级的单选按钮互斥。
通常搭配QGroupBox分组使用。
3.QCheckBox
多选按钮,实际上就是一个没有互斥效果的QRadioButton

【QButtonGroup(熟悉)】
是一个不可见的按钮组。
用于给若干个按钮统一编组后管理。

注意:QButtonGroup与QGroupBox有冲突。

【QLabel 标签(掌握)】
用于显示文字或者图片。

部分属性:
text    显示的文字
pixmap    显示的图片
alignment    对齐方向
wordWrap    自动换行(英文单词不会跨行)
margin        四个方向的边距

如何添加图片到项目中:
1.给图片命名(小写英文)
2.把图片放置到工作目录中
3.选中项目,鼠标右键,点击“添加新文件”
4.在弹出的窗口中,依次选择 Qt --- Qt资源文件,点击“选择”按钮。
5.在弹出的窗口中,输入资源文件的名称,例如res,点击“下一步”按钮。
6.在弹出的窗口中,直接点击“完成”按钮。
7.(只有第一次需要执行)选中项目中的.qrc文件,依次点击 添加---添加前缀
8.选中项目的.qrc文件,依次点击 添加---添加文件
9.在弹出的窗口中,选择要添加的图片文件。


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值