En esta página

QScxmlEvent Class

La clase QScxmlEvent es un evento para una máquina de estado Qt SCXML. Más...

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

Tipos públicos

enum EventType { PlatformEvent, InternalEvent, ExternalEvent }

Propiedades

Funciones públicas

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)

Descripción detallada

Los eventos SCXML impulsan las transiciones. La mayoría de los eventos se generan utilizando los elementos <raise> y <send> de la aplicación. La máquina de estados genera automáticamente algunos eventos obligatorios, como los errores.

Para obtener más información, consulte Especificación SCXML - 5.10.1 Estructura interna de los eventos. Para obtener más información sobre las diferencias entre la API Qt SCXML y la especificación, consulte Cumplimiento de SCXML.

Véase también QScxmlStateMachine.

Documentación de tipos de miembros

enum QScxmlEvent::EventType

Este tipo enum especifica el tipo de un evento SCXML:

ConstanteValorDescripción
QScxmlEvent::PlatformEvent0Evento generado internamente por la máquina de estado. Por ejemplo, errores.
QScxmlEvent::InternalEvent1Evento generado por un elemento <raise>.
QScxmlEvent::ExternalEvent2Evento generado por un elemento <send>.

Documentación de propiedades

data : QVariant

Esta propiedad contiene los datos incluidos por el remitente.

Cuando se utilizan elementos <param> en el elemento <send>, los datos contendrán un QVariantMap donde la clave es el atributo name, y el valor se toma del atributo expr o del atributo location.

Cuando se utiliza un elemento <content>, los datos contendrán un único elemento con el valor del atributo expr del elemento <content> o los datos hijo del elemento <content>.

Funciones de acceso:

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

delay : int

Esta propiedad contiene el retardo en milisegundos tras el cual se debe entregar el evento después de procesar el elemento <send>.

Funciones de acceso:

int delay() const
void setDelay(int delayInMiliSecs)

[read-only] errorEvent : bool

Esta propiedad indica si el evento representa un error.

Funciones de acceso:

bool isErrorEvent() const

errorMessage : QString

Esta propiedad contiene un mensaje de error para un evento de error, o un QString vacío.

Funciones de acceso:

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

eventType : EventType

Esta propiedad contiene el tipo de evento.

Funciones de acceso:

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

invokeId : QString

Esta propiedad contiene el ID de la máquina de estado invocada si el evento es generado por una.

Funciones de acceso:

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

name : QString

Esta propiedad contiene el nombre del evento.

Si el evento se genera dentro del documento SCXML, esta propiedad contiene el valor del atributo de evento especificado dentro del elemento <raise> o <send>.

Si el evento se crea en el código C++ y se envía a QScxmlStateMachine, el valor de esta propiedad se compara con el valor del atributo de evento especificado dentro del elemento <transition> en el documento SCXML.

Funciones de acceso:

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

origin : QString

Esta propiedad contiene el URI que señala el origen de un evento SCXML.

El origen equivale al atributo target del elemento <send>.

Funciones de acceso:

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

originType : QString

Esta propiedad contiene el tipo de origen de un evento SCXML.

El tipo de origen equivale al atributo type del elemento <send>.

Funciones de acceso:

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

[read-only] scxmlType : QString

Esta propiedad contiene el tipo de evento.

Funciones de acceso:

QString scxmlType() const

sendId : QString

Esta propiedad contiene el ID del evento.

El ID es utilizado por el elemento <cancel> para identificar el evento a cancelar.

Nota: La máquina de estados genera un ID único si no se especifica el atributo id en el elemento <send>. Se puede acceder al ID generado a través de esta propiedad.

Funciones de acceso:

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

Documentación de funciones miembro

QScxmlEvent::QScxmlEvent()

Crea un nuevo evento SCXML externo.

QScxmlEvent::QScxmlEvent(const QScxmlEvent &other)

Construye una copia de other.

[noexcept] QScxmlEvent::~QScxmlEvent()

Destruye el evento SCXML.

[invokable] void QScxmlEvent::clear()

Borra el contenido del evento.

Nota: Esta función puede invocarse a través del sistema de metaobjetos y desde QML. Véase Q_INVOKABLE.

QVariant QScxmlEvent::data() const

Devuelve los datos incluidos por el remitente.

Nota: Función Getter para datos de propiedades.

Véase también setData().

int QScxmlEvent::delay() const

Devuelve el retardo en milisegundos tras el cual se producirá este evento después de procesar el elemento <send>.

Nota: Función getter para la propiedad delay.

Véase también setDelay().

QString QScxmlEvent::errorMessage() const

Si se trata de un evento de error, devuelve el mensaje de error. En caso contrario, devuelve un QString vacío.

Nota: Función Getter para la propiedad errorMessage.

Véase también setErrorMessage().

QScxmlEvent::EventType QScxmlEvent::eventType() const

Devuelve el tipo de este evento.

Nota: Función Getter para la propiedad eventType.

Véase también setEventType() y QScxmlEvent::EventType.

QString QScxmlEvent::invokeId() const

Si este evento es generado por una máquina de estado invocada, devuelve el ID del elemento <invoke>. En caso contrario, devuelve un valor vacío.

Nota: Función Getter para la propiedad invokeId.

Véase también setInvokeId().

bool QScxmlEvent::isErrorEvent() const

Devuelve true cuando se trata de un evento de error, false en caso contrario.

Nota: Función Getter para la propiedad errorEvent.

QString QScxmlEvent::name() const

Devuelve el nombre del evento.

Nota: Función Getter para el nombre de la propiedad.

Véase también setName().

QString QScxmlEvent::origin() const

Devuelve un URI que apunta al origen de un evento SCXML.

Nota: Función Getter para la propiedad origin.

Véase también setOrigin().

QString QScxmlEvent::originType() const

Devuelve el tipo de origen de un evento SCXML.

Nota: Función Getter para la propiedad originType.

Véase también setOriginType().

QString QScxmlEvent::scxmlType() const

Devuelve el tipo de evento.

Nota: Función Getter para la propiedad scxmlType.

QString QScxmlEvent::sendId() const

Devuelve el ID del evento.

Nota: Función Getter para la propiedad sendId.

Véase también setSendId().

void QScxmlEvent::setData(const QVariant &data)

Establece los datos de la carga útil en data.

Nota: Función Setter para la propiedad data.

Véase también QScxmlEvent::data.

void QScxmlEvent::setDelay(int delayInMiliSecs)

Establece el retardo en milisegundos como el valor de delayInMiliSecs.

Nota: Función Setter para la propiedad delay.

Véase también QScxmlEvent::delay.

void QScxmlEvent::setErrorMessage(const QString &message)

Si se trata de un evento de error, se establece message como mensaje de error.

Nota: Función Setter para la propiedad errorMessage.

Véase también errorMessage().

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

Establece el tipo de evento en type.

Nota: Función Setter para la propiedad eventType.

Véase también QScxmlEvent::eventType y QScxmlEvent::EventType.

void QScxmlEvent::setInvokeId(const QString &invokeid)

Establece el ID de una máquina de estado invocada en invokeid.

Nota: Función Setter para la propiedad invokeId.

Véase también QScxmlEvent::invokeId.

void QScxmlEvent::setName(const QString &name)

Establece el nombre del evento en name.

Nota: Función Setter para la propiedad name.

Véase también name().

void QScxmlEvent::setOrigin(const QString &origin)

Establece el origen de un evento SCXML en origin.

Nota: Función Setter para la propiedad origin.

Véase también QScxmlEvent::origin.

void QScxmlEvent::setOriginType(const QString &origintype)

Establece el tipo de origen de un evento SCXML en origintype.

Nota: Función Setter para la propiedad originType.

Véase también QScxmlEvent::originType.

void QScxmlEvent::setSendId(const QString &sendid)

Establece el ID sendid para este evento.

Nota: Función Setter para la propiedad sendId.

Ver también sendId().

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

Asigna other a este evento SCXML y devuelve una referencia a este evento SCXML.

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