Класс QActionGroup
Класс QActionGroup группирует действия вместе. Подробнее...
| Заголовок: | #include <QActionGroup> |
| qmake: | QT += widgets |
| Наследует: | QObject |
Свойства
- 1 свойство унаследовано от QObject
Открытые функции
| 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 |
| bool | isEnabled() const |
| bool | isExclusive() const |
| bool | isVisible() const |
| void | removeAction(QAction *action) |
- 34 открытые функции унаследованы от QObject
Открытые слоты
| void | setDisabled(bool b) |
| void | setEnabled(bool) |
| void | setExclusive(bool) |
| void | setVisible(bool) |
- 1 открытый слот унаследован от QObject
Сигналы
| void | hovered(QAction *action) |
| void | triggered(QAction *action) |
- 2 сигнала унаследованы от QObject
Дополнительные унаследованные члены
- 1 открытая переменная унаследована от QObject
- 10 статические открытые члены унаследованы от QObject
- 9 защищенные функции унаследованы от QObject
- 2 защищенные переменные унаследованы от QObject
Подробное описание
Класс QActionGroup группирует действия вместе.
В некоторых ситуациях полезно группировать объекты QAction. Например, если у вас есть действия Выравнивание по левому краю, Выравнивание по правому краю, Выравнивание по ширине и Центрирование, только одно из этих действий должно быть активным в любой момент времени. Один из простых способов достижения этого — сгруппировать действия в группе действий.
Вот пример (из примера Меню):
alignmentGroup = new QActionGroup(this);
alignmentGroup->addAction(leftAlignAct);
alignmentGroup->addAction(rightAlignAct);
alignmentGroup->addAction(justifyAct);
alignmentGroup->addAction(centerAct);
leftAlignAct->setChecked(true); Здесь мы создаем новую группу действий. Поскольку группа действий по умолчанию является эксклюзивной, только одно из действий в группе может быть выбрано в любой момент времени.
Группа QActionGroup излучает сигнал triggered() при выборе одного из ее действий. Каждое действие в группе действий излучает свой сигнал triggered() как обычно.
Как указано выше, по умолчанию группа действий является эксклюзивной; она гарантирует, что только одно действие с флагом «можно выбрать» активно в любой момент времени. Если вы хотите сгруппировать действия с флагом «можно выбрать» без их эксклюзивности, вы можете отключить эксклюзивность, вызвав setExclusive(false).
Действия могут быть добавлены в группу действий с помощью addAction(), но обычно удобнее указать группу при создании действий; это гарантирует, что действия автоматически создаются с родителем. Действия могут быть визуально разделены друг от друга путем добавления разделителя к группе; создайте действие и используйте функцию QAction's setSeparator(), чтобы оно считалось разделителем. Группы действий добавляются в виджеты с помощью функции QWidget::addActions().
См. также QAction.
Документация по свойствам
enabled : bool
Это свойство определяет, включена ли группа действий.
Каждое действие в группе будет включено или выключено, если только оно не было явно выключено.
Функции доступа:
| bool | isEnabled() const |
| void | setEnabled(bool) |
См. также QAction::setEnabled().
exclusive : bool
Это свойство определяет, выполняется ли эксклюзивная проверка группы действий
Если exclusive имеет значение true, только одно действие с флагом «можно выбрать» в группе действий может быть активным в любой момент времени. Если пользователь выбирает другое действие с флагом «можно выбрать» в группе, выбранное действие становится активным, а активное действие становится неактивным.
Функции доступа:
| bool | isExclusive() const |
| void | setExclusive(bool) |
См. также QAction::checkable.
visible : bool
Это свойство определяет, отображается ли группа действий.
Каждое действие в группе действий будет соответствовать видимому состоянию этой группы, если только оно не было явно скрыто.
Функции доступа:
| bool | isVisible() const |
| void | setVisible(bool) |
См. также QAction::setEnabled().
Документация по функциям-членам
QActionGroup::QActionGroup(QObject *parent)
Конструктор группы действий для объекта parent.
Группа действий эксклюзивна по умолчанию. Вызовите setExclusive(false), чтобы сделать группу действий неэксклюзивной.
[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
Возвращает текущее отмеченное действие в группе, или 0, если ни одно не отмечено.
[signal] void QActionGroup::hovered(QAction *action)
Этот сигнал испускается, когда данное действие action в группе действий выделяется пользователем; например, когда пользователь приостанавливает курсор над элементом меню, кнопкой панели инструментов или нажимает сочетание клавиш для активации действия.
См. также QAction::activate().
void QActionGroup::removeAction(QAction *action)
Удаляет действие action из этой группы. В результате действие потеряет родителя.
См. также QAction::setActionGroup().
[slot] void QActionGroup::setDisabled(bool b)
Это вспомогательная функция для свойства enabled, которая полезна для соединений сигналов-слотов. Если b истинно, группа действий отключается; в противном случае она включается.
[signal] void QActionGroup::triggered(QAction *action)
Этот сигнал испускается, когда данное действие action в группе действий активируется пользователем; например, когда пользователь нажимает на элемент меню, кнопку панели инструментов или сочетание клавиш для активации действия.
Подключитесь к этому сигналу для командных действий.
См. также QAction::activate().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.11/qactiongroup.html