在Qt中,QPushButton
类继承自QAbstractButton
,并提供了许多用于控制按钮行为的成员函数。以下是一些常用的QPushButton
成员函数及其用法:
构造函数
QPushButton(QWidget *parent = nullptr)
: 创建一个没有文本标签的按钮。QPushButton(const QString &text, QWidget *parent = nullptr)
: 创建一个带有文本标签的按钮。
设置和获取文本
setText(const QString &text)
: 设置按钮的文本。text() const
: 返回按钮的文本。
设置和获取图标
setIcon(const QIcon &icon)
: 设置按钮的图标。icon() const
: 返回按钮的图标。
启用和禁用按钮
setEnabled(bool)
: 启用或禁用按钮。isEnabled() const
: 判断按钮是否启用。
设置和获取快捷键
setShortcut(const QKeySequence &key)
: 设置按钮的快捷键。shortcut() const
: 返回按钮的快捷键。
信号
clicked(bool checked = false)
: 当按钮被点击时发射此信号。pressed()
: 当按钮被按下时发射此信号。released()
: 当按钮被释放时发射此信号。toggled(bool checked)
: 对于可切换的按钮(如复选框按钮),当按钮状态改变时发射此信号。
样式和外观
setStyleSheet(const QString &styleSheet)
: 设置按钮的样式表。setAutoDefault(bool enable)
: 设置按钮是否为默认按钮(在某些样式下会自动变为蓝色或粗体)。QT 如何通过键盘Enter键控制QPushButton(默认按钮)-优快云博客setAutoRepeat(bool enable)
: 设置是否启用自动重复(如键盘上的重复按键)。setAutoRepeatDelay(int ms)
: 设置自动重复的延迟时间(以毫秒为单位)。setAutoRepeatInterval(int ms)
: 设置自动重复之间的间隔时间(以毫秒为单位)。
其他常用函数
isCheckable() const
: 判断按钮是否可切换(如复选框按钮)。setCheckable(bool checkable)
: 设置按钮是否可切换。isChecked() const
: 返回按钮的当前状态(对于可切换的按钮)。setCheckState(Qt::CheckState state)
: 设置按钮的状态(对于可切换的按钮)。QT 三态复选框-优快云博客checkState() const
: 返回按钮的当前状态(对于可切换的按钮)。
综合实例: