Spec-Zone.ru › Qt 5.6

Класс QButtonGroup

Класс QButtonGroup предоставляет контейнер для организации групп виджетов кнопок. Подробнее...

Заголовок: #include <QButtonGroup>
qmake: QT += widgets
Наследует: QObject
  • Список всех членов, включая наследуемые

Свойства

  • exclusive : bool
  • 1 свойство унаследовано от 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)
  • 31 открытых функций унаследовано от QObject

Сигналы

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)
  • 2 сигнала унаследовано от QObject

Дополнительные унаследованные члены

  • 1 открытый слот унаследован от QObject
  • 11 статических открытых членов унаследовано от QObject
  • 9 защищенных функций унаследовано от QObject

Подробное описание

Класс QButtonGroup предоставляет контейнер для организации групп виджетов кнопок.

QButtonGroup предоставляет абстрактный контейнер, в который можно помещать виджеты кнопок. Он не предоставляет визуального представления этого контейнера (см. QGroupBox для виджета-контейнера), а вместо этого управляет состояниями каждой из кнопок в группе.

Группа кнопок exclusive отключает все переключаемые (toggle) кнопки, кроме той, на которую был нажат. По умолчанию группа кнопок является эксклюзивной. Кнопки в группе кнопок обычно являются переключаемыми QPushButtonами, QCheckBoxами (обычно для неэксклюзивных групп кнопок) или QRadioButtonами. Если вы создаёте эксклюзивную группу кнопок, вам следует убедиться, что одна из кнопок в группе первоначально выбрана; в противном случае группа изначально будет в состоянии, когда ни одна кнопка не выбрана.

Кнопку можно добавить в группу с помощью addButton() и удалить с помощью removeButton(). Если группа эксклюзивная, текущая выбранная кнопка доступна с помощью checkedButton(). При нажатии на кнопку излучается сигнал buttonClicked; для переключаемой кнопки в эксклюзивной группе это означает, что кнопка была выбрана. Список кнопок в группе возвращается методом buttons().

Кроме того, QButtonGroup может устанавливать соответствие между целыми числами и кнопками. Вы можете назначить целое число id кнопке с помощью setId(), и получить его с помощью id(). Id текущей выбранной кнопки доступен с помощью checkedId(), и существует перегруженный сигнал buttonClicked(), который излучает id кнопки. Id -1 зарезервирован классом QButtonGroup и означает «нет такой кнопки». Цель механизма сопоставления — упростить представление значений перечисления в пользовательском интерфейсе.

См. также QGroupBox, QPushButton, QCheckBox и QRadioButton.

Документация по свойствам

exclusive : bool

Это свойство указывает, является ли группа кнопок эксклюзивной.

Если это свойство равно true, то только одна кнопка в группе может быть выбрана в данный момент. Пользователь может нажать на любую кнопку, чтобы выбрать её, и эта кнопка заменит существующую выбранную кнопку в группе.

В эксклюзивной группе пользователь не может снять выбор с текущей выбранной кнопки, нажав на неё; вместо этого необходимо нажать на другую кнопку в группе, чтобы установить новую выбранную кнопку для этой группы.

По умолчанию это свойство равно 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 или 0, если такой кнопки не существует.

Эта функция была добавлена в 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)

Этот сигнал испускается при нажатии на заданную кнопку.

Примечание: Сигнал 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)

Этот сигнал испускается при отпускании заданной кнопки.

Примечание: Сигнал 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)

Этот сигнал испускается при переключении заданной кнопки. 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

Возвращает выбранную кнопку группы кнопок или 0, если кнопки не выбраны.

См. также buttonClicked().

int QButtonGroup::checkedId() const

Возвращает идентификатор выбранной кнопки, или -1, если кнопка не выбрана.

Эта функция была представлена в Qt 4.1.

См. также setId().

int QButtonGroup::id(QAbstractButton *button) const

Возвращает идентификатор для указанной кнопки или -1, если такая кнопка не существует.

Эта функция была представлена в Qt 4.1.

См. также setId().

void QButtonGroup::removeButton(QAbstractButton *button)

Удаляет заданную кнопку из группы кнопок.

См. также addButton() и buttons().

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

Устанавливает id для указанной кнопки. Обратите внимание, что id не может быть -1.

Эта функция была представлена в Qt 4.1.

См. также id().

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.6/qbuttongroup.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API