QButtonGroup

Section: Misc. Reference Manual Pages (3qt)
Updated: 2 February 2007
Index Return to Main Contents
 

NAME

QButtonGroup - Organizes QButton widgets in a group  

SYNOPSIS

#include <qbuttongroup.h>

Inherits QGroupBox.

Inherited by QHButtonGroup and QVButtonGroup.

 

Public Members


QButtonGroup ( QWidget * parent = 0, const char * name = 0 )

QButtonGroup ( const QString & title, QWidget * parent = 0, const char * name = 0 )

QButtonGroup ( int strips, Orientation orientation, QWidget * parent = 0, const char * name = 0 )

QButtonGroup ( int strips, Orientation orientation, const QString & title, QWidget * parent = 0, const char * name = 0 )

bool isExclusive () const

bool isRadioButtonExclusive () const

virtual void setExclusive ( bool )

virtual void setRadioButtonExclusive ( bool )

int insert ( QButton * button, int id = -1 )

void remove ( QButton * button )

QButton * find ( int id ) const

int id ( QButton * button ) const

int count () const

virtual void setButton ( int id )

virtual void moveFocus ( int key )

QButton * selected () const

int selectedId () const
 

Signals


void pressed ( int id )

void released ( int id )

void clicked ( int id )
 

Properties


bool exclusive - whether the button group is exclusive

bool radioButtonExclusive - whether the radio buttons in the group are exclusive

int selectedId - the selected toggle button
 

DESCRIPTION

The QButtonGroup widget organizes QButton widgets in a group.

A button group widget makes it easier to deal with groups of buttons. Each button in a button group has a unique identifier. The button group emits a clicked() signal with this identifier when a button in the group is clicked. This makes a button group particularly useful when you have several similar buttons and want to connect all their clicked() signals to a single slot.

An exclusive button group switches off all toggle buttons except the one that was clicked. A button group is, by default, non-exclusive. Note that all radio buttons that are inserted into a button group are mutually exclusive even if the button group is non-exclusive. (See setRadioButtonExclusive().)

There are two ways of using a button group:

The button group is the parent widget of a number of buttons, i.e. the button group is the parent argument in the button constructor. The buttons are assigned identifiers 0, 1, 2, etc., in the order they are created. A QButtonGroup can display a frame and a title because it inherits QGroupBox.
The button group is an invisible widget and the contained buttons have some other parent widget. In this usage, each button must be manually inserted, using insert(), into the button group and given an identifier.

A button can be removed from the group with remove(). A pointer to a button with a given id can be obtained using find(). The id of a button is available using id(). A button can be set on with setButton(). The number of buttons in the group is returned by count().

[Image Omitted]

[Image Omitted]

See also QPushButton, QCheckBox, QRadioButton, Widget Appearance and Style, Layout Management, and Organizers.  

MEMBER FUNCTION DOCUMENTATION

 

QButtonGroup::QButtonGroup ( QWidget * parent = 0, const char * name = 0 )

Constructs a button group with no title.

The parent and name arguments are passed to the QWidget constructor.  

QButtonGroup::QButtonGroup ( const QString & title, QWidget * parent = 0, const char * name = 0 )

Constructs a button group with the title title.

The parent and name arguments are passed to the QWidget constructor.  

QButtonGroup::QButtonGroup ( int strips, Orientation orientation, QWidget * parent = 0, const char * name = 0 )

Constructs a button group with no title. Child widgets will be arranged in strips rows or columns (depending on orientation).

The parent and name arguments are passed to the QWidget constructor.  

QButtonGroup::QButtonGroup ( int strips, Orientation orientation, const QString & title, QWidget * parent = 0, const char * name = 0 )

Constructs a button group with title title. Child widgets will be arranged in strips rows or columns (depending on orientation).

The parent and name arguments are passed to the QWidget constructor.  

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

This signal is emitted when a button in the group is clicked. The id argument is the button's identifier.

See also insert().

Examples:  

int QButtonGroup::count () const

Returns the number of buttons in the group.  

QButton * QButtonGroup::find ( int id ) const

Returns the button with the specified identifier id, or 0 if the button was not found.  

int QButtonGroup::id ( QButton * button ) const

Returns the id of button, or -1 if button is not a member of this group.

See also selectedId.  

int QButtonGroup::insert ( QButton * button, int id = -1 )

Inserts the button with the identifier id into the button group. Returns the button identifier.

Buttons are normally inserted into a button group automatically by passing the button group as the parent when the button is constructed. So it is not necessary to manually insert buttons that have this button group as their parent widget. An exception is when you want custom identifiers instead of the default 0, 1, 2, etc., or if you want the buttons to have some other parent.

The button is assigned the identifier id or an automatically generated identifier. It works as follows: If id >= 0, this identifier is assigned. If id == -1 (default), the identifier is equal to the number of buttons in the group. If id is any other negative integer, for instance -2, a unique identifier (negative integer <= -2) is generated. No button has an id of -1.

See also find(), remove(), and exclusive.

Examples:  

bool QButtonGroup::isExclusive () const

Returns TRUE if the button group is exclusive; otherwise returns FALSE. See the "exclusive" property for details.  

bool QButtonGroup::isRadioButtonExclusive () const

Returns TRUE if the radio buttons in the group are exclusive; otherwise returns FALSE. See the "radioButtonExclusive" property for details.  

void QButtonGroup::moveFocus ( int key ) [virtual]

Moves the keyboard focus according to key, and if appropriate checks the new focus item.

This function does nothing unless the keyboard focus points to one of the button group members and key is one of Key_Up, Key_Down, Key_Left and Key_Right.  

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

This signal is emitted when a button in the group is pressed. The id argument is the button's identifier.

See also insert().  

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

This signal is emitted when a button in the group is released. The id argument is the button's identifier.

See also insert().  

void QButtonGroup::remove ( QButton * button )

Removes the button from the button group.

See also insert().  

QButton * QButtonGroup::selected () const

Returns the selected toggle button if exactly one is selected; otherwise returns 0.

See also selectedId.  

int QButtonGroup::selectedId () const

Returns the selected toggle button. See the "selectedId" property for details.  

void QButtonGroup::setButton ( int id ) [virtual]

Sets the selected toggle button to id. See the "selectedId" property for details.  

void QButtonGroup::setExclusive ( bool ) [virtual]

Sets whether the button group is exclusive. See the "exclusive" property for details.  

void QButtonGroup::setRadioButtonExclusive ( bool ) [virtual]

Sets whether the radio buttons in the group are exclusive. See the "radioButtonExclusive" property for details.  

Property Documentation

 

bool exclusive

This property holds whether the button group is exclusive.

If this property is TRUE, then the buttons in the group are toggled, and to untoggle a button you must click on another button in the group. The default value is FALSE.

Set this property's value with setExclusive() and get this property's value with isExclusive().  

bool radioButtonExclusive

This property holds whether the radio buttons in the group are exclusive.

If this property is TRUE (the default), the radiobuttons in the group are treated exclusively.

Set this property's value with setRadioButtonExclusive() and get this property's value with isRadioButtonExclusive().  

int selectedId

This property holds the selected toggle button.

The toggle button is specified as an ID.

If no toggle button is selected, this property holds -1.

If setButton() is called on an exclusive group, the button with the given id will be set to on and all the others will be set to off.

See also selected().

Set this property's value with setButton() and get this property's value with selectedId().

 

SEE ALSO

http://doc.trolltech.com/qbuttongroup.html http://www.trolltech.com/faq/tech.html  

COPYRIGHT

Copyright 1992-2007 Trolltech ASA, http://www.trolltech.com. See the license file included in the distribution for a complete license statement.  

AUTHOR

Generated automatically from the source code.  

BUGS

If you find a bug in Qt, please report it as described in http://doc.trolltech.com/bughowto.html. Good bug reports help us to help you. Thank you. The definitive Qt documentation is provided in HTML format; it is located at $QTDIR/doc/html and can be read using Qt Assistant or with a web browser. This man page is provided as a convenience for those users who prefer man pages, although this format is not officially supported by Trolltech. If you find errors in this manual page, please report them to qt-bugs@trolltech.com. Please include the name of the manual page (qbuttongroup.3qt) and the Qt version (3.3.8).