Auf dieser Seite

QScxmlEvent Class

Die Klasse „QScxmlEvent“ ist ein Ereignis für eine „ Qt SCXML “-Zustandsmaschine. Mehr...

Header: #include <QScxmlEvent>
CMake: find_package(Qt6 REQUIRED COMPONENTS Scxml)
target_link_libraries(mytarget PRIVATE Qt6::Scxml)
qmake: QT += scxml

Öffentliche Typen

enum EventType { PlatformEvent, InternalEvent, ExternalEvent }

Eigenschaften

Öffentliche Funktionen

QScxmlEvent()
QScxmlEvent(const QScxmlEvent &other)
~QScxmlEvent()
void clear()
QVariant data() const
int delay() const
QString errorMessage() const
QScxmlEvent::EventType eventType() const
QString invokeId() const
bool isErrorEvent() const
QString name() const
QString origin() const
QString originType() const
QString scxmlType() const
QString sendId() const
void setData(const QVariant &data)
void setDelay(int delayInMiliSecs)
void setErrorMessage(const QString &message)
void setEventType(const QScxmlEvent::EventType &type)
void setInvokeId(const QString &invokeid)
void setName(const QString &name)
void setOrigin(const QString &origin)
void setOriginType(const QString &origintype)
void setSendId(const QString &sendid)
QScxmlEvent &operator=(const QScxmlEvent &other)

Ausführliche Beschreibung

SCXML-Ereignisse lösen Übergänge aus. Die meisten Ereignisse werden mithilfe der Elemente „ <raise> “ und „ <send> “ in der Anwendung generiert. Die Zustandsmaschine generiert automatisch einige obligatorische Ereignisse, wie z. B. Fehler.

Weitere Informationen finden Sie unter „SCXML-Spezifikation – 5.10.1 Die interne Struktur von Ereignissen“. Weitere Informationen darüber, inwiefern sich die „ Qt SCXML “-API von der Spezifikation unterscheidet, finden Sie unter „SCXML-Konformität“.

Siehe auch „ QScxmlStateMachine “.

Dokumentation zu Mitgliedstypen

enum QScxmlEvent::EventType

Dieser Enum-Typ gibt den Typ eines SCXML-Ereignisses an:

KonstanteWertBeschreibung
QScxmlEvent::PlatformEvent0Ein Ereignis, das intern von der Zustandsmaschine generiert wird. Zum Beispiel Fehler.
QScxmlEvent::InternalEvent1Ein Ereignis, das von einem „ <raise> “-Element generiert wird.
QScxmlEvent::ExternalEvent2Ein von einem „ <send> “-Element generiertes Ereignis.

Eigenschaftsdokumentation

data : QVariant

Diese Eigenschaft enthält die vom Absender übermittelten Daten.

Wenn im Element „ <send> “ Elemente vom Typ „ <param> “ verwendet werden, enthalten die Daten ein „ QVariantMap “, bei dem der Schlüssel das „name“- Attribut ist und der Wert aus dem „expr“-Attribut oder dem „location“- Attribut stammt.

Wird ein „ <content> “-Element verwendet, enthalten die Daten ein einzelnes Element, dessen Wert entweder dem Wert des „expr“-Attributs des „ <content> “-Elements oder den untergeordneten Daten des „ <content> “-Elements entspricht.

Zugriffsfunktionen:

QVariant data() const
void setData(const QVariant &data)

delay : int

Diese Eigenschaft gibt die Verzögerung in Millisekunden an, nach der das Ereignis nach der Verarbeitung des Elements „ <send> “ übermittelt werden soll.

Zugriffsfunktionen:

int delay() const
void setDelay(int delayInMiliSecs)

[read-only] errorEvent : bool

Diese Eigenschaft gibt an, ob das Ereignis einen Fehler darstellt.

Zugriffsfunktionen:

bool isErrorEvent() const

errorMessage : QString

Diese Eigenschaft enthält eine Fehlermeldung für ein Fehlerereignis oder ein leeres „ QString “.

Zugriffsfunktionen:

QString errorMessage() const
void setErrorMessage(const QString &message)

eventType : EventType

Diese Eigenschaft enthält den Typ des Ereignisses.

Zugriffsfunktionen:

QScxmlEvent::EventType eventType() const
void setEventType(const QScxmlEvent::EventType &type)

invokeId : QString

Diese Eigenschaft enthält die ID der aufgerufenen Zustandsmaschine, sofern das Ereignis von einer solchen generiert wurde.

Zugriffsfunktionen:

QString invokeId() const
void setInvokeId(const QString &invokeid)

name : QString

Diese Eigenschaft enthält den Namen des Ereignisses.

Wird das Ereignis innerhalb des SCXML-Dokuments generiert, enthält diese Eigenschaft den Wert des Ereignisattributs, das innerhalb des Elements „ <raise> “ oder „ <send> “ angegeben ist.

Wird das Ereignis im C++-Code erstellt und an das Element „ QScxmlStateMachine “ übermittelt, wird der Wert dieser Eigenschaft mit dem Wert des im SCXML-Dokument im Element „ <transition> “ angegebenen Attributs „event“ abgeglichen.

Zugriffsfunktionen:

QString name() const
void setName(const QString &name)

origin : QString

Diese Eigenschaft enthält die URI, die auf den Ursprung eines SCXML-Ereignisses verweist.

Der Ursprung entspricht dem „target “-Attribut des Elements „ <send> “.

Zugriffsfunktionen:

QString origin() const
void setOrigin(const QString &origin)

originType : QString

Diese Eigenschaft enthält den Ursprungstyp eines SCXML-Ereignisses.

Der Ursprungstyp entspricht dem Attribut „type“ des Elements „ <send> “.

Zugriffsfunktionen:

QString originType() const
void setOriginType(const QString &origintype)

[read-only] scxmlType : QString

Diese Eigenschaft enthält den Ereignistyp.

Zugriffsfunktionen:

QString scxmlType() const

sendId : QString

Diese Eigenschaft enthält die ID des Ereignisses.

Die ID wird vom Element „ <cancel> “ verwendet, um das zu stornierende Ereignis zu identifizieren.

Hinweis: Die Zustandsmaschine generiert eine eindeutige ID, wenn das „id“-Attribut im Element „ <send> “ nicht angegeben ist. Auf die generierte ID kann über diese Eigenschaft zugegriffen werden.

Zugriffsfunktionen:

QString sendId() const
void setSendId(const QString &sendid)

Dokumentation zu den Member-Funktionen

QScxmlEvent::QScxmlEvent()

Erstellt ein neues externes SCXML-Ereignis.

QScxmlEvent::QScxmlEvent(const QScxmlEvent &other)

Erstellt eine Kopie von „ other “.

[noexcept] QScxmlEvent::~QScxmlEvent()

Löscht das SCXML-Ereignis.

[invokable] void QScxmlEvent::clear()

Löscht den Inhalt des Ereignisses.

Hinweis: Diese Funktion kann über das Metaobjektsystem und aus QML aufgerufen werden. Siehe Q_INVOKABLE.

QVariant QScxmlEvent::data() const

Gibt die vom Absender übermittelten Daten zurück.

Hinweis: Getter -Funktion für die Eigenschaft „data“.

Siehe auch „ setData()“.

int QScxmlEvent::delay() const

Gibt die Verzögerung in Millisekunden zurück, nach der dieses Ereignis nach der Verarbeitung des Elements „ <send> “ ausgelöst werden soll.

Hinweis: Getter -Funktion für die Eigenschaft „delay“.

Siehe auch „ setDelay()“.

QString QScxmlEvent::errorMessage() const

Handelt es sich um ein Fehlerereignis, wird die Fehlermeldung zurückgegeben. Andernfalls wird ein leeres ` QString` zurückgegeben.

Hinweis: Getter -Funktion für die Eigenschaft `errorMessage`.

Siehe auch ` setErrorMessage()`.

QScxmlEvent::EventType QScxmlEvent::eventType() const

Gibt den Typ dieses Ereignisses zurück.

Hinweis: Getter -Funktion für die Eigenschaft „eventType“.

Siehe auch „ setEventType()“ und „ QScxmlEvent::EventType “.

QString QScxmlEvent::invokeId() const

Wenn dieses Ereignis von einer aufgerufenen Zustandsmaschine generiert wird, gibt die Funktion die ID des Elements „ <invoke> “ zurück. Andernfalls gibt sie einen leeren Wert zurück.

Hinweis: Getter -Funktion für die Eigenschaft „invokeId“.

Siehe auch „ setInvokeId()“.

bool QScxmlEvent::isErrorEvent() const

Gibt „ true “ zurück, wenn es sich um ein Fehlerereignis handelt, andernfalls „ false “.

Hinweis: Getter -Funktion für die Eigenschaft „ errorEvent “.

QString QScxmlEvent::name() const

Gibt den Namen des Ereignisses zurück.

Hinweis: Getter -Funktion für die Eigenschaft „name“.

Siehe auch ` setName()`.

QString QScxmlEvent::origin() const

Gibt eine URI zurück, die auf den Ursprung eines SCXML-Ereignisses verweist.

Hinweis: Getter -Funktion für die Eigenschaft „origin“.

Siehe auch „ setOrigin()“.

QString QScxmlEvent::originType() const

Gibt den Ursprungstyp eines SCXML-Ereignisses zurück.

Hinweis: Getter -Funktion für die Eigenschaft „originType“.

Siehe auch „ setOriginType()“.

QString QScxmlEvent::scxmlType() const

Gibt den Ereignistyp zurück.

Hinweis: Getter -Funktion für die Eigenschaft „scxmlType“.

QString QScxmlEvent::sendId() const

Gibt die ID des Ereignisses zurück.

Hinweis: Getter -Funktion für die Eigenschaft „sendId“.

Siehe auch „ setSendId()“.

void QScxmlEvent::setData(const QVariant &data)

Setzt die Nutzdaten auf „ data “.

Hinweis: Setter -Funktion für die Eigenschaft „ data “.

Siehe auch „ QScxmlEvent::data “.

void QScxmlEvent::setDelay(int delayInMiliSecs)

Legt die Verzögerung in Millisekunden als Wert für „ delayInMiliSecs “ fest.

Hinweis: Setter -Funktion für die Eigenschaft ` delay`.

Siehe auch „ QScxmlEvent::delay “.

void QScxmlEvent::setErrorMessage(const QString &message)

Handelt es sich um ein Fehlerereignis, wird die Eigenschaft „ message “ als Fehlermeldung gesetzt.

Hinweis: Setter -Funktion für die Eigenschaft „ errorMessage “.

Siehe auch errorMessage().

void QScxmlEvent::setEventType(const QScxmlEvent::EventType &type)

Setzt den Ereignistyp auf „ type “.

Hinweis: Setter -Funktion für die Eigenschaft ` eventType`.

Siehe auch „ QScxmlEvent::eventType “ und „ QScxmlEvent::EventType “.

void QScxmlEvent::setInvokeId(const QString &invokeid)

Setzt die ID einer aufgerufenen Zustandsmaschine auf „ invokeid “.

Hinweis: Setter -Funktion für die Eigenschaft „ invokeId “.

Siehe auch „ QScxmlEvent::invokeId “.

void QScxmlEvent::setName(const QString &name)

Legt den Namen des Ereignisses auf „ name “ fest.

Hinweis: Setter -Funktion für die Eigenschaft „ name “.

Siehe auch „ name()“.

void QScxmlEvent::setOrigin(const QString &origin)

Setzt den Ursprung eines SCXML-Ereignisses auf „ origin “.

Hinweis: Setter -Funktion für die Eigenschaft „ origin “.

Siehe auch „ QScxmlEvent::origin “.

void QScxmlEvent::setOriginType(const QString &origintype)

Legt den Ursprungstyp eines SCXML-Ereignisses auf „ origintype “ fest.

Hinweis: Setter -Funktion für die Eigenschaft „ originType “.

Siehe auch „ QScxmlEvent::originType “.

void QScxmlEvent::setSendId(const QString &sendid)

Legt die ID „ sendid “ für dieses Ereignis fest.

Hinweis: Setter -Funktion für die Eigenschaft ` sendId`.

Siehe auch ` sendId()`.

QScxmlEvent &QScxmlEvent::operator=(const QScxmlEvent &other)

Weist diesem SCXML-Ereignis „ other “ zu und gibt eine Referenz auf dieses SCXML-Ereignis zurück.

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