QEventTransition Class
QEventTransition 클래스는 Qt 이벤트에 대한 QObject 에 특화된 전환 기능을 제공합니다. 더 보기...
| 헤더: | #include <QEventTransition> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS StateMachine) target_link_libraries(mytarget PRIVATE Qt6::StateMachine) |
| qmake: | QT += statemachine |
| 상속: | QAbstractTransition |
| 상속받는 항목: |
속성
- eventSource : QObject*
- eventType : QEvent::Type
공개 함수
| 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 프레임워크의 일부입니다.
예시:
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 바인딩을 지원합니다.
이 속성은 이 이벤트 전환과 연관된 이벤트 소스를 포함합니다.
액세스 함수:
| QObject * | eventSource() const |
| void | setEventSource(QObject *object) |
[bindable] eventType : QEvent::Type
참고: 이 속성은 QProperty 바인딩을 지원합니다.
이 속성은 이 이벤트 전환이 연관된 이벤트의 유형을 나타냅니다.
액세스 함수:
| QEvent::Type | eventType() const |
| void | setEventType(QEvent::Type type) |
멤버 함수 설명서
QEventTransition::QEventTransition(QState *sourceState = nullptr)
지정된 sourceState 를 사용하여 새로운 QEventTransition 객체를 생성합니다.
QEventTransition::QEventTransition(QObject *object, QEvent::Type type, QState *sourceState = nullptr)
지정된 ` type `의 이벤트와, 지정된 ` object` 및 ` 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()도 참조하십시오 .
© 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.