Qt Reference Documentation

QRadioButton Class Reference

The QRadioButton widget provides a radio button with a text label. More...

 #include <QRadioButton>

Inherits QAbstractButton.

Public Functions

QRadioButton ( QWidget * parent = 0 )
QRadioButton ( const QString & text, QWidget * parent = 0 )

Reimplemented Public Functions

virtual QSize sizeHint () const

Protected Functions

void initStyleOption ( QStyleOptionButton * option ) const

Reimplemented Protected Functions

virtual bool event ( QEvent * e )
virtual bool hitButton ( const QPoint & pos ) const
virtual void mouseMoveEvent ( QMouseEvent * e )
virtual void paintEvent ( QPaintEvent * )

Additional Inherited Members

Detailed Description

The QRadioButton widget provides a radio button with a text label.

A QRadioButton is an option button that can be switched on (checked) or off (unchecked). Radio buttons typically present the user with a "one of many" choice. In a group of radio buttons only one radio button at a time can be checked; if the user selects another button, the previously selected button is switched off.

Radio buttons are autoExclusive by default. If auto-exclusive is enabled, radio buttons that belong to the same parent widget behave as if they were part of the same exclusive button group. If you need multiple exclusive button groups for radio buttons that belong to the same parent widget, put them into a QButtonGroup.

Whenever a button is switched on or off it emits the toggled() signal. Connect to this signal if you want to trigger an action each time the button changes state. Use isChecked() to see if a particular button is selected.

Just like QPushButton, a radio button displays text, and optionally a small icon. The icon is set with setIcon(). The text can be set in the constructor or with setText(). A shortcut key can be specified by preceding the preferred character with an ampersand in the text. For example:

 QRadioButton *button = new QRadioButton("Search from the &cursor", this);

In this example the shortcut is Alt+c. See the QShortcut documentation for details (to display an actual ampersand, use '&&').

Important inherited members: text(), setText(), text(), setDown(), isDown(), autoRepeat(), group(), setAutoRepeat(), toggle(), pressed(), released(), clicked(), and toggled().

Screenshot of a Plastique radio button

A radio button shown in the Plastique widget style.

Screenshot of a Windows XP radio button

A radio button shown in the Windows XP widget style.

Screenshot of a Macintosh radio button

A radio button shown in the Macintosh widget style.

See also QPushButton, QToolButton, QCheckBox, GUI Design Handbook: Radio Button, and Group Box Example.

Member Function Documentation

QRadioButton::QRadioButton ( QWidget * parent = 0 )

Constructs a radio button with the given parent, but with no text or pixmap.

The parent argument is passed on to the QAbstractButton constructor.

QRadioButton::QRadioButton ( const QString & text, QWidget * parent = 0 )

Constructs a radio button with the given parent and a text string.

The parent argument is passed on to the QAbstractButton constructor.

bool QRadioButton::event ( QEvent * e ) [virtual protected]

Reimplemented from QObject::event().

bool QRadioButton::hitButton ( const QPoint & pos ) const [virtual protected]

Reimplemented from QAbstractButton::hitButton().

void QRadioButton::initStyleOption ( QStyleOptionButton * option ) const [protected]

Initialize option with the values from this QRadioButton. This method is useful for subclasses when they need a QStyleOptionButton, but don't want to fill in all the information themselves.

See also QStyleOption::initFrom().

void QRadioButton::mouseMoveEvent ( QMouseEvent * e ) [virtual protected]

Reimplemented from QWidget::mouseMoveEvent().

void QRadioButton::paintEvent ( QPaintEvent * ) [virtual protected]

Reimplemented from QWidget::paintEvent().

QSize QRadioButton::sizeHint () const [virtual]

Reimplemented from QWidget::sizeHint().

X

Thank you for giving your feedback.

Make sure it is related to this specific page. For more general bugs and requests, please use the Qt Bug Tracker.