QButtonGroup 类

QButtonGroup class provides a container to organize groups of button widgets. 更多...

头: #include <QButtonGroup>
qmake: QT += widgets
继承: QObject

特性

公共函数

QButtonGroup (QObject * parent = Q_NULLPTR)
~QButtonGroup ()
void addButton (QAbstractButton * button , int id = -1)
QAbstractButton * button (int id ) const
QList<QAbstractButton *> buttons () const
QAbstractButton * checkedButton () const
int checkedId () const
bool exclusive () const
int id (QAbstractButton * button ) const
void removeButton (QAbstractButton * button )
void setExclusive ( bool )
void setId (QAbstractButton * button , int id )

信号

void buttonClicked (QAbstractButton * button )
void buttonClicked (int id )
void buttonPressed (QAbstractButton * button )
void buttonPressed (int id )
void buttonReleased (QAbstractButton * button )
void buttonReleased (int id )
void buttonToggled (QAbstractButton * button , bool checked )
void buttonToggled (int id , bool checked )

额外继承成员

详细描述

QButtonGroup class provides a container to organize groups of button widgets.

QButtonGroup provides an abstract container into which button widgets can be placed. It does not provide a visual representation of this container (see QGroupBox 了解容器 Widget),但代替管理组中每个按钮的状态。

An exclusive 按钮组切换关闭所有可复选 (触发) 按钮,除已点击按钮外。默认情况下,按钮组是独占的。按钮组中的按钮通常是可复选 QPushButton s, QCheckBox (通常用于非独占按钮组),或 QRadioButton 。若创建独占按钮组,应确保组中某一按钮被最初复选;否则,组最初将处于未复选按钮的状态下。

按钮可以被添加到组采用 addButton () 和被移除采用 removeButton ()。若组是独占的,则目前复选的按钮可用于 checkedButton ()。若按钮被点击, buttonClicked () 信号被发射;对于独占组中的可复选按钮而言,这意味着按钮已被复选。组中按钮列表的返回通过 buttons ().

此外, QButtonGroup can map between integers and buttons. You can assign an integer id to a button with setId (),和检索它采用 id ()。目前复选按钮的 ID 可用于 checkedId (),且有重载信号 buttonClicked () 发射按钮的 id。ID -1 is reserved by QButtonGroup to mean "no such button". The purpose of the mapping mechanism is to simplify the representation of enum values in a user interface.

另请参阅 QGroupBox , QPushButton , QCheckBox ,和 QRadioButton .

特性文档编制

exclusive : bool

此特性保持按钮组是否独占

若此特性为 true , then only one button in the group can be checked at any given time. The user can click on any button to check it, and that button will replace the existing one as the checked button in the group.

In an exclusive group, the user cannot uncheck the currently checked button by clicking on it; instead, another button in the group must be clicked to set the new checked button for that group.

默认情况下此特性为 true .

访问函数:

bool exclusive () const
void setExclusive ( bool )

成员函数文档编制

QButtonGroup:: QButtonGroup ( QObject * parent = Q_NULLPTR)

构造新的,空按钮组采用给定 parent .

另请参阅 addButton () 和 setExclusive ().

QButtonGroup:: ~QButtonGroup ()

销毁按钮组。

void QButtonGroup:: addButton ( QAbstractButton * button , int id = -1)

添加给定 button 到按钮组。若 id 为 -1,id 将被赋值给按钮。自动赋值的 id 保证为负数,从 -2 开始。若要赋值自己的 id,请使用正值以避免冲突。

另请参阅 removeButton () 和 buttons ().

QAbstractButton *QButtonGroup:: button ( int id ) const

返回的按钮具有指定 id , or 0 if no such button exists.

该函数在 Qt 4.1 引入。

[signal] void QButtonGroup:: buttonClicked ( QAbstractButton * button )

此信号被发射当给定 button 被点击。按钮被点击当它先被按下然后释放时,当它的快捷键被键入时,或当 QAbstractButton::click () 或 QAbstractButton::animateClick () 以编程方式被调用。

注意: 信号 buttonClicked 在此类中是重载。要使用函数指针句法连接到此信号,必须在静态铸造中指定信号类型,如此范例所示:

connect(buttonGroup, static_cast<void(QButtonGroup::*)(QAbstractButton *)>(&QButtonGroup::buttonClicked),
    [=](QAbstractButton *button){ /* ... */ });
					

另请参阅 checkedButton () 和 QAbstractButton::clicked ().

[signal] void QButtonGroup:: buttonClicked ( int id )

此信号被发射当按钮具有给定 id 被点击。

注意: 信号 buttonClicked 在此类中是重载。要使用函数指针句法连接到此信号,必须在静态铸造中指定信号类型,如此范例所示:

connect(buttonGroup, static_cast<void(QButtonGroup::*)(int)>(&QButtonGroup::buttonClicked),
    [=](int id){ /* ... */ });
					

另请参阅 checkedButton () 和 QAbstractButton::clicked ().

[signal] void QButtonGroup:: buttonPressed ( QAbstractButton * button )

此信号被发射当给定 button 被按下。

注意: 信号 buttonPressed 在此类中是重载。要使用函数指针句法连接到此信号,必须在静态铸造中指定信号类型,如此范例所示:

connect(buttonGroup, static_cast<void(QButtonGroup::*)(QAbstractButton *)>(&QButtonGroup::buttonPressed),
    [=](QAbstractButton *button){ /* ... */ });
					

该函数在 Qt 4.2 引入。

另请参阅 QAbstractButton::pressed ().

[signal] void QButtonGroup:: buttonPressed ( int id )

此信号被发射当按钮具有给定 id 被按下。

注意: 信号 buttonPressed 在此类中是重载。要使用函数指针句法连接到此信号,必须在静态铸造中指定信号类型,如此范例所示:

connect(buttonGroup, static_cast<void(QButtonGroup::*)(int)>(&QButtonGroup::buttonPressed),
    [=](int id){ /* ... */ });
					

该函数在 Qt 4.2 引入。

另请参阅 QAbstractButton::pressed ().

[signal] void QButtonGroup:: buttonReleased ( QAbstractButton * button )

此信号被发射当给定 button 被释放。

注意: 信号 buttonReleased 在此类中是重载。要使用函数指针句法连接到此信号,必须在静态铸造中指定信号类型,如此范例所示:

connect(buttonGroup, static_cast<void(QButtonGroup::*)(QAbstractButton *)>(&QButtonGroup::buttonReleased),
    [=](QAbstractButton *button){ /* ... */ });
					

该函数在 Qt 4.2 引入。

另请参阅 QAbstractButton::released ().

[signal] void QButtonGroup:: buttonReleased ( int id )

此信号被发射当按钮具有给定 id 被释放。

注意: 信号 buttonReleased 在此类中是重载。要使用函数指针句法连接到此信号,必须在静态铸造中指定信号类型,如此范例所示:

connect(buttonGroup, static_cast<void(QButtonGroup::*)(int)>(&QButtonGroup::buttonReleased),
    [=](int id){ /* ... */ });
					

该函数在 Qt 4.2 引入。

另请参阅 QAbstractButton::released ().

[signal] void QButtonGroup:: buttonToggled ( QAbstractButton * button , bool checked )

此信号被发射当给定 button 被触发。 checked 为 true 若按钮被复选,或 false 若按钮未被复选。

注意: 信号 buttonToggled 在此类中是重载。要使用函数指针句法连接到此信号,必须在静态铸造中指定信号类型,如此范例所示:

connect(buttonGroup, static_cast<void(QButtonGroup::*)(QAbstractButton *, bool)>(&QButtonGroup::buttonToggled),
    [=](QAbstractButton *button, bool checked){ /* ... */ });
					

该函数在 Qt 5.2 引入。

另请参阅 QAbstractButton::toggled ().

[signal] void QButtonGroup:: buttonToggled ( int id , bool checked )

此信号被发射当按钮具有给定 id 被触发。 checked 为 true 若按钮被复选,或 false 若按钮未被复选。

注意: 信号 buttonToggled 在此类中是重载。要使用函数指针句法连接到此信号,必须在静态铸造中指定信号类型,如此范例所示:

connect(buttonGroup, static_cast<void(QButtonGroup::*)(int, bool)>(&QButtonGroup::buttonToggled),
    [=](int id, bool checked){ /* ... */ });
					

该函数在 Qt 5.2 引入。

另请参阅 QAbstractButton::toggled ().

QList < QAbstractButton *> QButtonGroup:: buttons () const

返回按钮组的按钮列表。这可能为空。

另请参阅 addButton () 和 removeButton ().

QAbstractButton *QButtonGroup:: checkedButton () const

Returns the button group's checked button, or 0 if no buttons are checked.

另请参阅 buttonClicked ().

int QButtonGroup:: checkedId () const

返回 ID 为 checkedButton (),或 -1 若没有按钮被复选。

该函数在 Qt 4.1 引入。

另请参阅 setId ().

int QButtonGroup:: id ( QAbstractButton * button ) const

返回 ID 为指定 button ,或 -1 若不存在这样的按钮。

该函数在 Qt 4.1 引入。

另请参阅 setId ().

void QButtonGroup:: removeButton ( QAbstractButton * button )

移除给定 button 从按钮组。

另请参阅 addButton () 和 buttons ().

void QButtonGroup:: setId ( QAbstractButton * button , int id )

设置 id 为指定 button 。注意, id 不可以是 -1。

该函数在 Qt 4.1 引入。

另请参阅 id ().