QEventTransition Class

QEventTransition クラスは、Qt イベントのQObject 特有のトランジションを提供します。詳細...

Header: #include <QEventTransition>
CMake: find_package(Qt6 REQUIRED COMPONENTS StateMachine)
target_link_libraries(mytarget PRIVATE Qt6::StateMachine)
qmake: QT += statemachine
Inherits: QAbstractTransition
Inherited By:

QKeyEventTransition and QMouseEventTransition

プロパティ

パブリック関数

QEventTransition(QState *sourceState = nullptr)
QEventTransition(QObject *object, QEvent::Type type, QState *sourceState = nullptr)
virtual ~QEventTransition()
QBindable<QObject *> bindableEventSource()
QBindable<QEvent::Type> bindableEventType()
QObject *eventSource() const
QEvent::Type eventType() const
void setEventSource(QObject *object)
void setEventType(QEvent::Type type)

再実装された保護された関数

virtual bool event(QEvent *e) override
virtual bool eventTest(QEvent *event) override
virtual void onTransition(QEvent *event) override

詳細説明

QEventTransition オブジェクトは、イベントを特定のQObject にバインドします。QEventTransition はQt State Machine Framework の一部です。

QPushButton *button = ...;
QState *s1 = ...;
QState *s2 = ...;
// If in s1 and the button receives an Enter event, transition to s2
QEventTransition *enterTransition = new QEventTransition(button, QEvent::Enter);
enterTransition->setTargetState(s2);
s1->addTransition(enterTransition);
// If in s2 and the button receives an Exit event, transition back to s1
QEventTransition *leaveTransition = new QEventTransition(button, QEvent::Leave);
leaveTransition->setTargetState(s1);
s2->addTransition(leaveTransition);

サブクラス化

eventTest() 関数を再実装する場合、最初にベース実装を呼び出して、イベントが適切なオブジェクトとイベントタイプのQStateMachine::WrappedEvent であることを確認する必要があります。その後、QStateMachine::WrappedEvent にイベントをキャストし、QStateMachine::WrappedEvent::event() を呼び出して元のイベントを取得し、そのオブジェクトに対して追加のチェックを実行することができます。

QState::addTransition()も参照

プロパティのドキュメント

[bindable] eventSource : QObject*

注意: このプロパティは、QProperty バインディングをサポートしています。

このプロパティは、このイベント遷移が関連付けられているイベントソースを保持します。

[bindable] eventType : QEvent::Type

注: このプロパティは、QProperty バインディングに対応する。

このプロパティは、このイベント遷移が関連付けられるイベントのタイプを保持する。

メンバー関数 ドキュメント

QEventTransition::QEventTransition(QState *sourceState = nullptr)

与えられたsourceState を持つ新しい QEventTransition オブジェクトを構築します。

QEventTransition::QEventTransition(QObject *object, QEvent::Type type, QState *sourceState = nullptr)

指定されたobject の指定されたtype のイベントと、指定されたsourceState のイベントに関連付けられた新しい QEventTransition オブジェクトを構築します。

[virtual noexcept] QEventTransition::~QEventTransition()

このQObject イベント遷移を破棄します。

[override virtual protected] bool QEventTransition::event(QEvent *e)

再インプリメント:QAbstractTransition::event(QEvent *e)。

QObject *QEventTransition::eventSource() const

このイベント遷移に関連付けられているイベント・ソースを返します。

注: プロパティ eventSource のゲッター関数です。

setEventSource()も参照してください

[override virtual protected] bool QEventTransition::eventTest(QEvent *event)

再実装:QAbstractTransition::eventTest(QEvent *event)。

QEvent::Type QEventTransition::eventType() const

このイベント遷移に関連付けられているイベントタイプを返します。

備考: プロパティ eventType のゲッター関数です。

setEventType()も参照して ください。

[override virtual protected] void QEventTransition::onTransition(QEvent *event)

再インプリメント:QAbstractTransition::onTransition(QEvent *event)。

void QEventTransition::setEventSource(QObject *object)

このイベント遷移に関連付けられているイベントソースを、指定されたobject に設定します。

注: プロパティeventSource のセッター関数です。

eventSource()も参照してください

void QEventTransition::setEventType(QEvent::Type type)

このイベント遷移に関連付けられているイベントtype を設定します。

注: プロパティeventType に対するセッター関数。

eventType()も参照して ください。

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