Spec-Zone.ru › Qt 5.12

Класс QActionGroup

Класс QActionGroup группирует действия вместе. Подробнее...

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

Свойства

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

Статические открытые члены

const QMetaObject staticMetaObject
  • 9 статических открытых членов унаследованы от QObject

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

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

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

Класс QActionGroup группирует действия вместе.

В некоторых ситуациях полезно группировать объекты QAction вместе. Например, если у вас есть действие Выравнивание по левому краю, действие Выравнивание по правому краю, действие Выравнивание по ширине и действие Выравнивание по центру, только одно из этих действий должно быть активным в любой момент. Один простой способ добиться этого — сгруппировать действия в группе действий.

Вот пример (из примера Меню):

    alignmentGroup = new QActionGroup(this);
    alignmentGroup->addAction(leftAlignAct);
    alignmentGroup->addAction(rightAlignAct);
    alignmentGroup->addAction(justifyAct);
    alignmentGroup->addAction(centerAct);
    leftAlignAct->setChecked(true);

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

Alignment options in a QMenu

Группа QActionGroup излучает сигнал triggered() при выборе одного из ее действий. Каждое действие в группе действий излучает свой сигнал triggered() как обычно.

Как сказано выше, группа действий по умолчанию exclusive; она гарантирует, что только одно действие с возможностью выбора может быть активным в любой момент. Если вы хотите сгруппировать действия с возможностью выбора, не делая их эксклюзивными, вы можете отключить эксклюзивность, вызвав 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 имеет значение true, группа действий отключена; в противном случае она включена.

[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/qt-5.12/qactiongroup.html

Spec-Zone.ru

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