09.QT控件:按钮类控件

1. QPushButton

在QT中使⽤ QPushButton 表⽰⼀个按钮。QPushButton 继承⾃ QAbstractButton,这个类是⼀个抽象类,是其他按钮的⽗类。


(1)QAbstractButton 中,和 QPushButton 相关性较⼤的属性:

(2)QPushButton独有属性:

  1. autoDefault属性:用于设置按钮是否自动成为默认按钮。当autoDefault属性为true时,按钮可以根据上下文自动变为默认按钮,即按下Enter键时触发按钮的点击事件。

  2. default属性:指定按钮是否为默认按钮。默认按钮通常在对话框中有特殊的行为,例如按下Enter键时触发默认按钮的点击事件。通过设置default属性为true,可以将按钮设置为默认按钮。

  3. flat属性:用于设置按钮是否为扁平样式。当flat属性为true时,按钮将没有边框和背景样式,看起来更加扁平化。这可以用于实现一些特定的界面设计效果。

(3)使用代码的方式设置快捷键:

• 使用 setShortcut 给按钮设置快捷键。参数是⼀个 QKeySequence 对象,表⽰⼀个按键序列,支持组合键 (ctrl + c 这种)。
• QKeySequence 的构造函数参数,可以直接使⽤ "ctrl+c" 这样的按键名字符串表⽰,也可以使⽤预定义好的常量 (形如 Qt::CTRL + Qt::Key_C ) 表示。

2. QRadioButton

QRadioButton 是单选按钮,可以让我们在多个选项中选择⼀个。QAbstractButton 中和 QRadioButton 关系较⼤的属:

注意 :

(1)checkable设为false时只是让该按钮无法被选中,但是 点击事件依然会正常响应。如果希望按钮不能选中也不会有响应,可以设置enabled属性为false或disabled属性为true。
(2)如果界面中存在多组单选按钮,希望不同组之间不存在排他性,可以使 QButtonGroup对单选按钮进行分组,将同一组的单选按钮添加到同一个QButtonGroup中。这样单选按钮的排他性只在所在的组内生效。

3. QCheckBox

QCheckBox表示复选按钮,可以允许选中多个。和 QCheckBox 最相关的属性也是 checkable 和 checked, 都是继承⾃ QAbstractButton。致于QCheckBox 独有的属性 tristate用来实现 "三态复选框",比较冷门,暂不叙述。

4. QToolButton

QToolButton大部分功能和QPushButton一致,主要应用与工具栏,菜单等场景。

相关推荐
沫璃染墨11 小时前
《Qt从零入门系列(十五):Qt线程安全与锁机制详解——从QMutex到RAII与读写锁实战》
开发语言·c++·qt·安全·交互·线程·qt6.3
小豆庄15 小时前
视频脱敏引擎的追踪难题:转场误判定、ID撞号和淡入窗口
qt·算法·目标检测·音视频·视频·敏捷流程
小灰灰搞电子18 小时前
Qt 中使用 QSettings 存储结构体数据详解
开发语言·qt
LaoWaiHang1 天前
关于Qt中鼠标左键事件被子控件截留的处理
qt
初阳7852 天前
【基于Qt5仿音乐播放器(一)】——项目准备
qt·1024程序员节
kaixin_learn_qt_ing2 天前
Qt开发工程师
qt
ShineWinsu2 天前
对于Qt:信号与槽的解析
c++·qt·gui·lambda·信号·信号与槽·槽函数
努力实干3 天前
Qt/C++ 模块化设计与工程组织
开发语言·c++·qt
Lhan.zzZ3 天前
Qt:动态库模块框架设计
开发语言·c++·qt
qq_401700414 天前
TCP 长连接、心跳包与断线自动重连设计:工业级通信的“不死鸟”架构
网络·qt·tcp/ip