Sur cette page

QEventTransition Class

La classe `QEventTransition` propose une transition spécifique à ` QObject` pour les événements Qt. En savoir plus...

En-tête : #include <QEventTransition>
CMake : find_package(Qt6 REQUIRED COMPONENTS StateMachine)
target_link_libraries(mytarget PRIVATE Qt6::StateMachine)
qmake : QT += statemachine
Hérite de : QAbstractTransition
Hérité 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 transition particulière ( QObject). QEventTransition fait partie du frameworkQt 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 bien un QStateMachine::WrappedEvent correspondant à l’objet et au type d’événement appropriés. Vous pouvez ensuite convertir l’événement en QStateMachine::WrappedEvent, récupérer 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 de type « 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 de type « 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 sur les fonctions membres

QEventTransition::QEventTransition(QState *sourceState = nullptr)

Crée un nouvel objet `QEventTransition` avec l'sourceState` spécifiée.

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

Crée un nouvel objet `QEventTransition` associé aux événements de l'type ` spécifiée pour l'object` spécifiée, et avec l'sourceState` spécifiée.

[virtual noexcept] QEventTransition::~QEventTransition()

Supprime 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.

Remarque : fonctiongetter pour la propriété eventSource.

Voir aussi 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.

Remarque : fonctiongetter pour la propriété eventType.

Voir aussi 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 sur l'object fournie.

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

Voir aussi eventSource().

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

Définit l’ type d’événement à laquelle cette transition d’événement est associée.

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

Voir aussi ` 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.