Auf dieser Seite

QFinalState Class

Die Klasse „QFinalState“ stellt einen Endzustand bereit. Mehr dazu...

Header: #include <QFinalState>
CMake: find_package(Qt6 REQUIRED COMPONENTS StateMachine)
target_link_libraries(mytarget PRIVATE Qt6::StateMachine)
qmake: QT += statemachine
Erbt von: QAbstractState

Öffentliche Funktionen

QFinalState(QState *parent = nullptr)
virtual ~QFinalState()

Neu implementierte geschützte Funktionen

virtual bool event(QEvent *e) override
virtual void onEntry(QEvent *event) override
virtual void onExit(QEvent *event) override

Ausführliche Beschreibung

Ein Endzustand wird verwendet, um mitzuteilen, dass (ein Teil) eines „ QStateMachine “ seine Arbeit beendet hat. Wenn ein Endzustand auf oberster Ebene erreicht wird, wird das Signal „ finished()“ der Zustandsmaschine ausgegeben. Im Allgemeinen wird beim Eintritt in einen „final“-Teilzustand (ein Kind eines „ QState “) das Signal „ finished()“ des übergeordneten Zustands ausgesendet. „QFinalState“ ist Teil des „Qt State Machine “-Frameworks.

Um einen Endzustand zu verwenden, erstellen Sie ein QFinalState-Objekt und fügen ihm einen Übergang von einem anderen Zustand hinzu. Beispiel:

QPushButton button;

QStateMachine machine;
QState *s1 = new QState();
QFinalState *s2 = new QFinalState();
s1->addTransition(&button, SIGNAL(clicked()), s2);
machine.addState(s1);
machine.addState(s2);

QObject::connect(&machine, SIGNAL(finished()), QApplication::instance(), SLOT(quit()));
machine.setInitialState(s1);
machine.start();

Siehe auch „ QState::finished()“.

Dokumentation der Mitgliedsfunktionen

QFinalState::QFinalState(QState *parent = nullptr)

Erstellt ein neues QFinalState-Objekt mit dem angegebenen „ parent “-Zustand.

[virtual noexcept] QFinalState::~QFinalState()

Löscht diesen Endzustand.

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

Implementiert: ` QAbstractState::event(QEvent *e)`.

[override virtual protected] void QFinalState::onEntry(QEvent *event)

Umsetzt: ` QAbstractState::onEntry(QEvent *event)`.

[override virtual protected] void QFinalState::onExit(QEvent *event)

Umsetzt: QAbstractState::onExit(QEvent *event).

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