QRadioButton Class

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

Header: #include <QRadioButton>
qmake: QT += widgets
Inherits: QAbstractButton

Public Functions

QRadioButton(QWidget *parent = nullptr)
QRadioButton(const QString &text, QWidget *parent = nullptr)
virtual ~QRadioButton()

Reimplemented Public Functions

virtual QSize minimumSizeHint() const override
virtual QSize sizeHint() const override

Static Public Members

const QMetaObject staticMetaObject
  • 1 static public member inherited from QAbstractButton
  • 6 static public members inherited from QWidget
  • 9 static public members inherited from QObject

Protected Functions

void initStyleOption(QStyleOptionButton *option) const

Reimplemented Protected Functions

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

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().

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

Member Function Documentation

QRadioButton::QRadioButton(QWidget *parent = nullptr)

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 = nullptr)

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

The parent argument is passed on to the QAbstractButton constructor.

[virtual] QRadioButton::~QRadioButton()

Destructor.

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

Reimplemented from QAbstractButton::event().

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

Reimplemented from QAbstractButton::hitButton().

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

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().

[override virtual] QSize QRadioButton::minimumSizeHint() const

Reimplemented from QWidget::minimumSizeHint().

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

Reimplemented from QAbstractButton::mouseMoveEvent().

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

Reimplemented from QAbstractButton::paintEvent().

[override virtual] QSize QRadioButton::sizeHint() const

Reimplemented from QWidget::sizeHint().

© 2018 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.