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一致,主要应用与工具栏,菜单等场景。

相关推荐
7年老菜鸡2 小时前
策略模式(C++)三分钟读懂
c++·qt·策略模式
huanggang9825 小时前
在Ubuntu22.04上使用Qt Creator开发ROS2项目
qt·ros2
老秦包你会6 小时前
Qt第三课 ----------容器类控件
开发语言·qt
spygg7 小时前
Qt低版本多网卡组播bug
qt·组播·多网卡组播·qt5.7.0
码农客栈7 小时前
qt QWebSocketServer详解
qt
plmm烟酒僧9 小时前
Windows下QT调用MinGW编译的OpenCV
开发语言·windows·qt·opencv
Black_Friend9 小时前
关于在VS中使用Qt不同版本报错的问题
开发语言·qt
CSUC9 小时前
【Qt】QTreeView 和 QStandardItemModel的关系
qt
冷凝女子10 小时前
【QT】海康视频及openCv抓拍正脸接口
qt·opencv·音视频·海康
苏三有春12 小时前
PyQt5实战——UTF-8编码器功能的实现(六)
开发语言·qt