• Qt应用开发(基础篇)——按钮基类 QAbstractButton


    一、前言

            QAbstractButton类,继承于QWidget,是Qt按钮小部件的抽象基类,提供按钮常用的功能。

            QAbstractButton按钮基类,它的子类(pushbuttoncheckboxtoolbutton等)处理用户操作,并指定按钮的绘制方式。QAbstractButton提供对按钮状态的支持,提供比如点击信号clicked、按下信号pressed、释放信号released、复选状态isChecked、是否可复选状态checkable等。

            QAbstractButton提供了按钮的文本text属性和图标icon属性,如果按钮被禁用,将会显示一个禁用的外观。如果按钮的文本包含了一个“&”的符号,那么将创建一个快捷方式,比如:

    QPushButton *button = new QPushButton(tr("Ro&ck && Roll"), this);

            当按下Alt+C的时候,焦点会回到该部件。如果要显示“&”,请使用“&&”。设置快捷方式的另一种办法就是使用setShortcut()方法,这个方法主要用于部件没有文本的时候。

    1. button->setIcon(QIcon(":/images/print.png"));
    2. button->setShortcut(tr("Alt+F7"));

    二、QAbstractButton类

    1、autoExclusive

           该属性表示是否启用自动排他性,如果启用了自动排他性,在排他按钮组中,每次只能选中一个按钮,选中另一个按钮会自动取消选中先前选中的按钮。该属性除了QRadioButton,其他默认都是fasle。

    1. bool autoExclusive() const
    2. void setAutoExclusive(bool)

    2、autoRepeat

           该属性表示是否启动自动触发。如果启用的话,当按下按钮的时候,pressed(), released()和clicked()会定期发出。默认为false。

    1. bool autoRepeat() const
    2. void setAutoRepeat(bool)

     3、autoRepeatDelay

            该属性用于表示自动重复触发信号延迟。

    1. int autoRepeatDelay() const
    2. void setAutoRepeatDelay(int)

    4、autoRepeatInterval

            该属性用于自动重复触发信号间隔。

    1. int autoRepeatInterval() const
    2. void setAutoRepeatInterval(int)

    5、checkable

            该属性用于表示是否可以可以选中,QCheckBox复选框和QRadioButton单选框默认开启,其他按钮型的默认为关闭。

    1. bool isCheckable() const
    2. void setCheckable(bool)

    6、checked   

            该属性用于表示是否已经选中状态,选中得checkable打开才可以设置成功。

    1. bool isChecked() const
    2. void setChecked(bool)

    7、down

            该属性用于让按钮按下,如果此属性为true,则按下按钮,不会发出pressed()和clicked()信号。默认为false。

    1. bool isDown() const
    2. void setDown(bool)

    8、icon

            该属性用于保存按钮图标

    1. QIcon icon() const
    2. void setIcon(const QIcon &icon)

    9、iconSize

            该属性用于保存按钮图标尺寸

    1. QSize iconSize() const
    2. void setIconSize(const QSize &size)

    10、shortcut

            该属性用于表示按钮的快捷方式QKeySequence

    1. QKeySequence shortcut() const
    2. void setShortcut(const QKeySequence &key)

    11、text

            该属性用于保存按钮文本,如果文本出现字符为“&”,那么将自动创建快捷方式,Ctrl+下一个字符为快捷方式。

    1. QString text() const
    2. void setText(const QString &text)

    12、公共方法

    1)group

            返回此按钮所属的组,如果按钮不是任何QButtonGroup的成员,则此函数返回nullptr。

    QButtonGroup *group() const

    13、信号

    1)clicked

            当按钮被激活时(即,当鼠标光标在按钮内时按下然后释放),当键入快捷键或调用click()或animateClick()时发出该信号。如果调用setDown()、setChecked()或toggle(),则不会发出此信号。

    void clicked(bool checked = false)
    2)pressed

            当按钮被按下的时候触发该信号。

    void pressed()
     3)released

            当按钮被按下之后被释放触发该信号。

    void released()
    4)toggled

            每当可检查按钮改变其状态时,都会发出此信号。如果按钮被选中,则Checked为true,如果按钮未被选中,则为false,适用于复选框、单选框按钮。

    void toggled(bool checked)
  • 相关阅读:
    嵌入式面试2(c相关)
    【剑指 Offer 66. 构建乘积数组】(很巧妙)
    反射_数据结构
    职场工作汇报
    typescript58-泛型类
    Aspose.Words for .NET查找和替换教程——使用元字符查找和替换文本
    蓝桥杯-回文日期
    论文阅读 GloDyNE Global Topology Preserving Dynamic Network Embedding
    KLEE简单使用
    【数据挖掘竞赛】零基础入门数据挖掘-二手汽车价格预测
  • 原文地址:https://blog.csdn.net/u014491932/article/details/132684082