Класс QEventTransition
Класс QEventTransition предоставляет переход, специфичный для объектов QObject, для событий Qt. Подробнее...
| Заголовок: | #include <QEventTransition> |
| CMake: | find_package(Qt6 COMPONENTS StateMachine REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::StateMachine) |
| qmake: | QT += statemachine |
| Наследует: | QAbstractTransition |
| Наследуется от: |
Свойства
- eventSource : QObject*
- eventType : QEvent::Type
Открытые функции
| QEventTransition(QObject *object, QEvent::Type type, QState *sourceState = nullptr) | |
| QEventTransition(QState *sourceState = nullptr) | |
| virtual | ~QEventTransition() |
| 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.
Пример:
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(QObject *object, QEvent::Type type, QState *sourceState = nullptr)
Создаёт новый объект QEventTransition, связанный с событиями заданного типа type для данного объекта object и с заданным sourceState.
QEventTransition::QEventTransition(QState *sourceState = nullptr)
Создаёт новый объект QEventTransition с заданным sourceState.
[virtual] 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().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/qeventtransition.html