Sur cette page

QEventTransition Class

La classe QEventTransition fournit une transition spécifique à QObject pour les événements Qt. Plus d'informations...

En-tête : #include <QEventTransition>
CMake : find_package(Qt6 REQUIRED COMPONENTS StateMachine)
target_link_libraries(mytarget PRIVATE Qt6::StateMachine)
qmake : QT += statemachine
Hérite : QAbstractTransition
Héritée par :

QKeyEventTransition et QMouseEventTransition

Propriétés

Fonctions publiques

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)

Fonctions protégées réimplémentées

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

Description détaillée

Un objet QEventTransition lie un événement à une QObject particulière. QEventTransition fait partie du cadreQt State Machine .

Exemple :

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);

Sous-classement

Lorsque vous réimplémentez la fonction eventTest(), vous devez d'abord appeler l'implémentation de base pour vérifier que l'événement est un QStateMachine::WrappedEvent pour l'objet et le type d'événement appropriés. Vous pouvez ensuite transformer l'événement en QStateMachine::WrappedEvent et obtenir l'événement d'origine en appelant QStateMachine::WrappedEvent::event(), puis effectuer des vérifications supplémentaires sur cet objet.

Voir également QState::addTransition().

Documentation sur les propriétés

[bindable] eventSource : QObject*

Remarque : Cette propriété prend en charge les liaisons QProperty.

Cette propriété contient la source d'événement à laquelle cette transition d'événement est associée

Fonctions d'accès :

QObject *eventSource() const
void setEventSource(QObject *object)

[bindable] eventType : QEvent::Type

Remarque : Cette propriété prend en charge les liaisons QProperty.

Cette propriété contient le type d'événement auquel cette transition d'événement est associée

Fonctions d'accès :

QEvent::Type eventType() const
void setEventType(QEvent::Type type)

Documentation des fonctions membres

QEventTransition::QEventTransition(QState *sourceState = nullptr)

Construit un nouvel objet QEventTransition avec l'adresse sourceState.

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

Construit un nouvel objet QEventTransition associé aux événements de l'adresse type donnée pour l'adresse object donnée, et à l'adresse sourceState donnée.

[virtual noexcept] QEventTransition::~QEventTransition()

Détruit cette transition d'événement QObject.

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

Réimplémente : QAbstractTransition::event(QEvent *e).

QObject *QEventTransition::eventSource() const

Renvoie la source d'événement associée à cette transition d'événement.

Note : Fonction Getter pour la propriété eventSource.

Voir également setEventSource().

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

Réimplémente : QAbstractTransition::eventTest(QEvent *event).

QEvent::Type QEventTransition::eventType() const

Renvoie le type d'événement auquel cette transition d'événement est associée.

Note : fonction Getter pour la propriété eventType.

Voir également setEventType().

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

Réimplémente : QAbstractTransition::onTransition(QEvent *event).

void QEventTransition::setEventSource(QObject *object)

Définit la source d'événement associée à cette transition d'événement comme étant la source donnée object.

Remarque : fonction de définition de la propriété eventSource.

Voir également eventSource().

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

Définit l'événement type auquel cette transition d'événement est associée.

Remarque : fonction de définition de la propriété eventType.

Voir également eventType().

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.