class QScxmlEvent#

QScxmlEvent 类是一个用于 Qt SCXML 状态机的事件。《更多》…

摘要#

属性#

  • data - 发送者包含的数据

  • delay - 在处理完 <send> 元素后,事件将在多少毫秒后传递

  • errorEvent - 事件是否表示错误

  • errorMessage - 错误事件的错误消息,或空 QString

  • eventType - 事件的类型

  • invokeId - 如果事件由一个生成,则调用状态机的 ID

  • name - 事件名称

  • origin - 指向 SCXML 事件来源的 URI

  • originType - SCXML 事件的来源类型

  • scxmlType - 事件类型

  • sendId - 事件的 ID

方法#

说明

此文档可能包含从C++自动翻译成Python的代码片段。我们始终欢迎对代码片段进行翻译的贡献。如果您发现翻译有问题,也可以通过在https:/bugreports.qt.io/projects/PYSIDE上创建票据来通知我们。

详细描述#

SCXML 事件 驱动转换。大多数事件是通过在应用中使用 <raise><send> 元素生成的。状态机自动生成一些强制事件,如错误。

有关更多信息,请参阅 SCXML规范 - 5.10.1 事件的内部结构 。有关Qt SCXML API与规范差异的更多信息,请参阅 SCXML兼容性

另请参阅

QScxmlStateMachine

EventType#

此枚举类型指定SCXML事件的类型

常量

描述

QScxmlEvent.PlatformEvent

由状态机内部生成的的事件。例如,错误。

QScxmlEvent.InternalEvent

<raise> 元素生成的事件。

QScxmlEvent.ExternalEvent

<send> 元素生成的事件。

说明

当使用 from __feature__ import true_property 时,可以直接使用属性;否则通过访问函数来操作。

属性data: object#

此属性保存发送者包含的数据。

当在 <send> 元素中使用 <param> 元素时,数据将包含一个 QVariantMap,其键为 name 属性的值,值来自于 expr 属性或 location 属性。

当使用 <content> 元素时,数据将包含单个项,该项值为 <content> 元素的 expr 属性值或 <content> 元素的后代数据。

访问函数
属性delay: int#

此属性保存执行 <send> 元素之后的延时,以毫秒为单位,事件将在此延时后发出。

访问函数
属性errorEvent: bool#

此属性保存事件是否表示一个错误。

访问函数
属性errorMessage: str#

此属性保存错误事件的错误消息,或一个空的 QString

访问函数
属性eventType: QScxmlEvent.EventType#

此属性保存事件的类型。

访问函数
属性invokeId: str#

此属性保存如果事件由状态机生成,则为被调用状态机的标识。

访问函数
属性name: str#

此属性保存事件的名称。

如果事件是在SCXML文档内部生成的,则此属性将包含位于<raise><send>元素内部的event属性的值。

如果事件是在C++代码中创建,并提交给QScxmlStateMachine ,则此属性的值将与SCXML文档中<transition>元素内的event属性的值进行匹配。

访问函数
属性origin: str#

此属性包含指向SCXML事件源的URI。

源相当于<send>元素的target属性。

访问函数
属性originType: str#

此属性包含SCXML事件的源类型。

源类型相当于<send>元素的type属性。

访问函数
属性scxmlType: str#

此属性包含事件类型。

访问函数
属性sendId: str#

此属性包含事件的ID。

该ID被用于<cancel>元素以标识要取消的事件。

说明

如果<send>元素中没有指定id属性,则状态机将生成一个唯一的ID。可以通此属性访问生成的ID。

访问函数
__init__(other)#
参数:

otherQScxmlEvent

构造other的副本。

__init__()

创建一个新的外部SCXML事件。

clear()#

清除事件的全部内容。

data()#
返回类型:

对象

返回发送者包含的数据。

另请参阅

setData()

data 属性的获取器。

延迟()#
返回类型:

int

返回在处理 `` 元素后多久(以毫秒为单位)应传递此事件。

另请参阅

setDelay()

delay 属性的获取器。

errorMessage()#
返回类型:

str

如果这是错误事件,返回错误消息。否则,返回一个空的 QString。

另请参阅

setErrorMessage()

errorMessage 属性的获取器。

eventType()#
返回类型:

EventType

返回此事件类型。

另请参阅

setEventType()EventType

eventType 属性的获取器。

invokeId()#
返回类型:

str

如果此事件由调用的状态机生成,则返回 `` 元素的 ID。否则,返回空值。

另请参阅

setInvokeId()

invokeId 属性的获取器。

isErrorEvent()#
返回类型:

bool

当此事件是错误事件时返回 `true`,否则返回 `false`。

errorEvent 属性的获取器。

name()#
返回类型:

str

返回事件名称。

另请参阅

setName()

name 属性的获取器。

origin()#
返回类型:

str

返回指向 SCXML 事件源的 URI。

另请参阅

setOrigin()

origin 属性的获取器。

originType()#
返回类型:

str

返回 SCXML 事件的源类型。

另请参阅

setOriginType()

属性 originType 的获取器。

scxmlType()#
返回类型:

str

返回事件类型。

属性 scxmlType 的获取器。

sendId()#
返回类型:

str

返回事件的 ID。

另请参阅

setSendId()

属性 sendId 的获取器。

setData(data)#
参数:

data – 对象

将有效载荷数据设置为 data

另请参阅

data

属性 data 的设置器。

setDelay(delayInMiliSecs)#
参数:

delayInMiliSecs – 整数

将延迟以毫秒值的形式设置为 delayInMiliSecs

另请参阅

delay

属性 delay 的设置器。

setErrorMessage(message)#
参数:

message – 字符串

如果是错误事件,则将 message 设置为错误信息。

另请参阅

errorMessage()

属性 errorMessage 的设置器。

setEventType(type)#
参数:

typeEventType

将事件类型设置为 type

另请参阅

eventType EventType

属性 eventType 的设置器。

setInvokeId(invokeId)#
参数:

invokeId – 字符串

将调用状态机的 ID 设置为 invokeid

另请参阅

invokeId

属性 invokeIdᅟ 的设置器。

setName(name)#
参数:

name – str

将事件的名称设置为 name

另请参阅

name()

属性 nameᅟ 的设置器。

setOrigin(origin)#
参数:

origin – str

将 SCXML 事件的来源设置为 origin

另请参阅

origin

属性 originᅟ 的设置器。

setOriginType(originType)#
参数:

originType – str

将 SCXML 事件的来源类型设置为 origintype

另请参阅

originType

属性 originTypeᅟ 的设置器。

setSendId(sendId)#
参数:

sendId – str

为此事件设置 ID sendid

另请参阅

sendId()

属性 sendIdᅟ 的设置器。