Класс 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) | |
| виртуальный | ~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)
[slot] void QActionGroup::setDisabled(bool b)
Это вспомогательная функция для свойства enabled, которая полезна для подключений сигналов-слотов. Если b истинно, группа действий отключается; в противном случае она включается.
[slot] void QActionGroup::setExclusive(bool b)
Включить или выключить проверку исключения группы
Это вспомогательный метод, который вызывает setExclusionPolicy(ExclusionPolicy::Exclusive) при b истинно, в противном случае setExclusionPolicy(QActionGroup::ExclusionPolicy::None).
См. также isExclusive() и QActionGroup::exclusionPolicy.
[virtual] 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.1/qactiongroup.html