Класс QActionGroup
Класс QActionGroup группирует действия вместе. Подробнее...
| Заголовок: | #include <QActionGroup> |
| CMake: | find_package(Qt6 COMPONENTS Gui REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Gui) |
| qmake: | QT += gui |
| С момента: | Qt 6.0 |
| Наследует: | QObject |
Типы общедоступных данных
| Перечисление | ExclusionPolicy { None, Exclusive, ExclusiveOptional } |
Свойства
- enabled : bool
- exclusionPolicy : QActionGroup::ExclusionPolicy
- visible : bool
Общедоступные функции
| QActionGroup(QObject *parent) | |
| virtual | ~QActionGroup() |
| QList<QAction *> | actions() const |
| QAction * | addAction(QAction *action) |
| QAction * | addAction(const QString &text) |
| QAction * | addAction(const QIcon &icon, const QString &text) |
| QAction * | checkedAction() const |
| QActionGroup::ExclusionPolicy | exclusionPolicy() const |
| bool | isEnabled() const |
| bool | isExclusive() const |
| bool | isVisible() const |
| void | removeAction(QAction *action) |
Открытые слоты
| void | setDisabled(bool b) |
| void | setEnabled(bool) |
| void | setExclusionPolicy(QActionGroup::ExclusionPolicy policy) |
| void | setExclusive(bool b) |
| void | setVisible(bool) |
Подробное описание
QActionGroup — базовый класс для классов, группирующих объекты, наследующие QAction, вместе.
В некоторых ситуациях полезно группировать объекты QAction вместе. Например, если у вас есть действие Выравнивание по левому краю, действие Выравнивание по правому краю, действие Выравнивание по ширине и действие Выравнивание по центру, только одно из этих действий должно быть активным в любой момент времени. Один из простых способов добиться этого — сгруппировать действия в группе действий, наследующей QActionGroup.
См. также QAction.
Документация по типам членов
Перечисление QActionGroup::ExclusionPolicy
Это перечисление задаёт различные политики, которые можно использовать для управления тем, как группа выполняет эксклюзивную проверку на действия с возможностью выбора.
| Постоянная | Значение | Описание |
|---|---|---|
QActionGroup::ExclusionPolicy::None |
0 |
Действия в группе могут быть выбраны независимо друг от друга. |
QActionGroup::ExclusionPolicy::Exclusive |
1 |
В любой момент времени может быть выбрано ровно одно действие. Это политика по умолчанию. |
QActionGroup::ExclusionPolicy::ExclusiveOptional |
2 |
В любой момент времени может быть выбрано не более одного действия. Действия также могут быть все невыбранными. |
См. также exclusionPolicy.
Документация по свойствам
enabled : bool
Это свойство указывает, активирована ли группа действий
Каждое действие в группе будет активировано или деактивировано, если оно не было явно деактивировано.
Функции доступа:
| bool | isEnabled() const |
| void | setEnabled(bool) |
См. также QAction::setEnabled().
exclusionPolicy : QActionGroup::ExclusionPolicy
Это свойство содержит политику эксклюзивной проверки группы
Если exclusionPolicy установлено в Exclusive, только одно действие с возможностью выбора в группе действий может быть активным в любой момент времени. Если пользователь выбирает другое действие с возможностью выбора в группе, выбранное им становится активным, а то, что было активным, становится неактивным. Если exclusionPolicy установлено в ExclusionOptional, группа эксклюзивна, но активное действие с возможностью выбора в группе может быть снято с выбора, что оставляет группу без выбранных действий.
Функции доступа:
| QActionGroup::ExclusionPolicy | exclusionPolicy() const |
| void | setExclusionPolicy(QActionGroup::ExclusionPolicy policy) |
См. также QAction::checkable.
visible : bool
Это свойство указывает, видима ли группа действий
Каждое действие в группе действий будет соответствовать видимому состоянию этой группы, если оно не было явно скрыто.
Функции доступа:
| bool | isVisible() const |
| void | setVisible(bool) |
См. также QAction::setEnabled().
Документация по функциям-членам
QActionGroup::QActionGroup(QObject *parent)
Создаёт группу действий для объекта parent.
Группа действий эксклюзивна по умолчанию. Вызовите setExclusive(false), чтобы сделать группу неэксклюзивной. Чтобы сделать группу эксклюзивной, но разрешить снятие с выбора активного действия, вместо этого вызовите setExclusionPolicy(QActionGroup::ExclusionPolicy::ExclusiveOptional)
void QActionGroup::setDisabled(bool b)
Это вспомогательная функция для свойства enabled, которая полезна для соединений сигналов — слотов. Если b равно true, группа действий деактивируется; в противном случае она активируется.
void QActionGroup::setExclusive(bool b)
Включить или выключить проверку эксклюзивности группы
Это вспомогательный метод, который вызывает setExclusionPolicy(ExclusionPolicy::Exclusive), когда b равно true, а в противном случае setExclusionPolicy(QActionGroup::ExclusionPolicy::None).
См. также isExclusive() и QActionGroup::exclusionPolicy.
QActionGroup::~QActionGroup()
Удаляет группу действий.
QList<QAction *> QActionGroup::actions() const
Возвращает список действий этой группы. Он может быть пустым.
QAction *QActionGroup::addAction(QAction *action)
Добавляет action в эту группу и возвращает его.
Обычно действие добавляется в группу путём создания его с группой в качестве родителя, поэтому эта функция обычно не используется.
См. также QAction::setActionGroup().
QAction *QActionGroup::addAction(const QString &text)
Создаёт и возвращает действие с текстом text. Созданное действие является потомком этой группы действий.
Обычно действие добавляется в группу путём создания его с группой в качестве родителя, поэтому эта функция обычно не используется.
См. также QAction::setActionGroup().
QAction *QActionGroup::addAction(const QIcon &icon, const QString &text)
Создаёт и возвращает действие с текстом text и иконкой icon. Созданное действие является потомком этой группы действий.
Обычно действие добавляется в группу путём создания его с группой в качестве родителя, поэтому эта функция обычно не используется.
См. также QAction::setActionGroup().
QAction *QActionGroup::checkedAction() const
Возвращает текущее отмеченное действие в группе или nullptr , если нет отмеченных.
bool QActionGroup::isExclusive() const
Возвращает true, если группа эксклюзивная.
Группа эксклюзивная, если ExclusionPolicy имеет значение Exclusive или ExclusionOptional.
void QActionGroup::removeAction(QAction *action)
Удаляет action из этой группы. В результате у действия не будет родителя.
См. также QAction::setActionGroup().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.0/qactiongroup.html