|  | Home · Overviews · Examples |

# QButtonGroup Class Reference
[com.trolltech.qt.gui module]

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

Inherits `QObject`.

## Detailed Description

The `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` for a container widget), but instead manages the states of each of the buttons in the group.

An exclusive button group switches off all checkable (toggle) buttons except the one that was clicked. By default, a button group is exclusive. The buttons in a button group are usually checkable `QPushButton`'s, `QCheckBox`es (normally for non-exclusive button groups), or `QRadioButton`s. If you create an exclusive button group, you should ensure that one of the buttons in the group is initially checked; otherwise, the group will initially be in a state where no buttons are checked.

A button is added to the group with `addButton`. It can be removed from the group with `removeButton`. If the group is exclusive, the currently checked button is available as `checkedButton`. If a button is clicked the `buttonClicked` signal is emitted. For a checkable button in an exclusive group this means that the button was checked. The list of buttons in the group is returned by `buttons`.

In addition, `QButtonGroup` can map between integers and buttons. You can assign an integer id to a button with `setId`, and retrieve it with `id`. The id of the currently checked button is available with `checkedId`, and there is an overloaded signal `buttonClicked` which emits the id of the button. The purpose of the mapping mechanism is to simplify the representation of enum values in a user interface.

See also `QGroupBox`, `QPushButton`, `QCheckBox`, and `QRadioButton`.