QActionGroup Class

QActionGroupクラスは、アクションをグループ化します。詳細...

Header: #include <QActionGroup>
CMake: find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui
Since: Qt 6.0
Inherits: QObject

パブリックタイプ

enum class ExclusionPolicy { None, Exclusive, ExclusiveOptional }

プロパティ

パブリック関数

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)

シグナル

void hovered(QAction *action)
void triggered(QAction *action)

詳細説明

QActionGroup は、QAction オブジェクトを継承するクラスをグループ化するための基本クラスです。

状況によっては、QAction オブジェクトをグループ化すると便利です。たとえば、Left Align アクション、Right Align アクション、Justify アクション、Center アクションがある場合、これらのアクションのうち 1 つだけが常にアクティブでなければなりません。これを実現する1つの簡単な方法は、QActionGroupを継承したアクション・グループにアクションをまとめることです。

QActionも参照のこと

メンバ型ドキュメント

enum class QActionGroup::ExclusionPolicy

この列挙型は、グループがチェック可能なアクションの排他チェックを実行する方法を制御するために使用できるさまざまなポリシーを指定します。

定数説明
QActionGroup::ExclusionPolicy::None0グループ内のアクションは、互いに独立してチェックすることができます。
QActionGroup::ExclusionPolicy::Exclusive1正確に1つのアクションを一度にチェックすることができます。これはデフォルトのポリシーです。
QActionGroup::ExclusionPolicy::ExclusiveOptional2一度に最大1つのアクションをチェックできる。アクションはすべてチェックを外すこともできる。

exclusionPolicyも参照

プロパティ Documentation

enabled : bool

このプロパティは、アクショングループが有効かどうかを保持します。

グループ内の各アクションは、明示的に無効化されていない限り、有効または無効になります。

アクセス関数:

bool isEnabled() const
void setEnabled(bool)

QAction::setEnabled()も参照の こと。

exclusionPolicy : QActionGroup::ExclusionPolicy

このプロパティは、グループの排他チェックポリシーを保持する。

ExclusivePolicyがExclusiveに設定されている場合、アクショングループ内のチェック可能なアクションは常に1つだけアクティブになります。ユーザーがグループ内の別のチェック可能なアクションを選択すると、そのユーザーが選択したアクションがアクティブになり、アクティブだったアクションは非アクティブになります。ExclusionPolicyがExclusionOptionalに設定されている場合、グループは排他的ですが、グループ内のアクティブなチェック可能アクションのチェックを外すことができます。

アクセス関数:

QActionGroup::ExclusionPolicy exclusionPolicy() const
void setExclusionPolicy(QActionGroup::ExclusionPolicy policy)

QAction::checkableも参照のこと

visible : bool

このプロパティは、アクショングループが可視であるかどうかを保持します。

アクショングループ内の各アクションは、明示的に非表示にされていない限り、このグループの可視状態と一致する。

アクセス関数:

bool isVisible() const
void setVisible(bool)

QAction::setEnabled() も参照

メンバ関数 ドキュメント

[explicit] QActionGroup::QActionGroup(QObject *parent)

parent オブジェクトのアクショングループを構築する。

アクショングループはデフォルトでは排他的です。アクショングループを非排他的にするにはsetExclusive(false) を呼び出します。グループを排他的にするが、アクティブなアクションのチェックを外すことを許可するには、代わりにsetExclusionPolicy(QActionGroup::ExclusionPolicy::ExclusiveOptional) を呼び出します。

[virtual noexcept] 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)

texticon を持つアクションを作成し、返します。 新たに作成されたアクションは、このアクショングループの子になります。

通常、アクションをグループに追加するには、グループを親としてアクションを作成します。

QAction::setActionGroup()も参照してください

QAction *QActionGroup::checkedAction() const

グループ内で現在チェックされているアクションを返します。チェックされていない場合はnullptr を返します。

[signal] void QActionGroup::hovered(QAction *action)

このシグナルは、アクション・グループ内の指定されたaction がユーザによってハイライトされたときに発せられます。例えば、ユーザがメニュー・オプションやツールバー・ボタンの上にカーソルを置いて一時停止したときや、アクションのショートカット・キーの組み合わせを押したときなどです。

QAction::activate()も参照してください

bool QActionGroup::isExclusive() const

グループが排他的である場合、true を返します。

ExclusionPolicy が Exclusive または ExclusionOptional の場合、グループは排他的です。

void QActionGroup::removeAction(QAction *action)

このグループからaction を削除します。アクションは結果として親を持ちません。

QAction::setActionGroup()も参照してください

[slot] void QActionGroup::setDisabled(bool b)

これはenabled プロパティの便宜関数で、シグナルとスロットの接続に便利です。b が真の場合、アクション・グループは無効になり、そうでない場合は有効になります。

[slot] void QActionGroup::setExclusive(bool b)

グループ除外チェックを有効または無効にする

これは便宜的なメソッドで、b が true の場合はsetExclusionPolicy(ExclusionPolicy::Exclusive) を、そうでない場合はsetExclusionPolicy(QActionGroup::ExclusionPolicy::None) を呼び出します。

isExclusive() およびQActionGroup::exclusionPolicyも参照

[signal] void QActionGroup::triggered(QAction *action)

このシグナルは、アクショングループ内の指定されたaction がユーザーによってアクティブにされたときに発せられます。例えば、ユーザーがメニューオプションやツールバーボタンをクリックしたり、アクションのショートカットキーの組み合わせを押したりしたときです。

コマンドアクションの場合は、このシグナルに接続します。

QAction::activate()も参照してください

©2024 The Qt Company Ltd. 本書に含まれるドキュメントの著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。