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