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:
| Konstante | Wert | Beschreibung |
|---|---|---|
QScxmlEvent::PlatformEvent | 0 | Ein Ereignis, das intern von der Zustandsmaschine generiert wird. Zum Beispiel Fehler. |
QScxmlEvent::InternalEvent | 1 | Ein Ereignis, das von einem „ <raise> “-Element generiert wird. |
QScxmlEvent::ExternalEvent | 2 | Ein 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:
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:
[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:
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:
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:
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.