- class QScxmlDataModel#
QScxmlDataModel类是 Qt SCXML 状态机的数据模型基类。 更多信息…继承自:
QScxmlNullDataModel,QScxmlCppDataModel概要#
属性#
stateMachine- 属于此数据模型的状态机
方法#
def
__init__()def
stateMachine()
虚方法#
def
evaluateToBool()def
evaluateToVoid()def
scxmlProperty()def
setScxmlEvent()def
setup()
信号#
静态函数#
注释
本文件可能包含自动从C++转换到Python的代码片段。我们始终欢迎对片段翻译的贡献。如果您发现翻译存在问题,也可以通过在https:/bugreports.qt.io/projects/PYSIDE上创建工单来告诉我们。
详细说明#
SCXML数据模型在SCXML规范 - 第5节 数据模型和数据操纵中描述。有关支持的数据模型的更多信息,请参阅SCXML兼容性 。
一个数据模型只能属于一个状态机。
注释
当使用
from __feature__ import true_property时,可以直接使用属性,否则可以通过访问函数进行使用。- propertystateMachine#
此属性保存属于该数据模型的状态机。
数据模型只能属于一个状态机,状态机也只有一个数据模型。这种关系需要在状态机启动之前设置。设置数据模型上的此属性将自动设置状态机上的对应
dataModel属性。创建一个新的数据模型,具有父对象
parent。- 静态方法createScxmlDataModel#
- 参数:
pluginKey – str
- 返回类型:
根据指定的
pluginKey创建数据模型。- 抽象 evaluateAssignment(id, ok)#
- 参数:
id – int
ok – bool
评估由
id指向的赋值操作,如果发生错误则将ok设置为false,如果没有错误则设置为true。- 抽象 evaluateForeach(id, ok, body)#
- 参数:
id – int
ok – bool
body –
ForeachLoopBody
评估由
id指向的 foreach 循环,如果发生错误则将ok设置为false,如果没有错误则设置为true。每次迭代都会执行body。- 抽象 evaluateInitialization(id, ok)#
- 参数:
id – int
ok – bool
评估由
id指向的初始化操作,如果发生错误则将ok设置为false,如果没有错误则设置为true。- 抽象 evaluateToBool(id)#
- 参数:
id – int
- 返回类型:
bool
评估由
id指向的可执行内容,如果发生错误则将ok设置为false,如果没有错误则设置为true。以布尔值返回评估的结果。- 抽象 evaluateToString(id)#
- 参数:
id – int
- 返回类型:
str
评估由
id指向的可执行内容,如果发生错误则将ok设置为false,如果没有错误则设置为true。以 QString 形式返回评估的结果。- 抽象 evaluateToVariant(id)#
- 参数:
id – int
- 返回类型:
object
评估由
id指定的可执行内容,如果出现错误则将ok设置为false,如果没有错误则设置为true。以 QVariant 类型返回评估结果。- 抽象 evaluateToVoid(id, ok)#
- 参数:
id – int
ok – bool
评估由
id指定的可执行内容,如果出现错误则将ok设置为false,如果没有错误则设置为true。期望执行后没有返回结果。- 抽象 hasScxmlProperty(name)#
- 参数:
name – str
- 返回类型:
bool
如果存在具有给定
name的属性,则返回true,否则返回false。- 抽象 scxmlProperty(name)#
- 参数:
name – str
- 返回类型:
object
返回
name属性的值。另请参阅
- 抽象 setScxmlEvent(event)#
- 参数:
event –
QScxmlEvent
设置用于后续可执行内容执行的
event。- 抽象 setScxmlProperty(name, value, context)#
- 参数:
name – str
value – object
context – str
- 返回类型:
bool
为具有
name名称的属性设置value值。context是一个字符串,用于错误消息中指示 SCXML 文件中错误发生的位置。如果成功则返回
true,如果发生错误则返回false。另请参阅
- setStateMachine(stateMachine)#
- 参数:
状态机 –
QScxmlStateMachine
将此模型所属的状态机设置为
stateMachine。状态机与模型之间存在一对一的关系。一旦设置状态机之后,就无法再更改。使用此方法再次尝试设置状态机将被忽略。另请参阅
stateMachine属性的设置器。- abstract setup(initialDataValues)#
- 参数:
initialDataValues – 一种字典,键为QString类型,值为QVariant类型。
- 返回类型:
bool
使用
initialDataValues指定的初始值初始化数据模型。如果解析出错或任何初始化步骤失败,则返回
false。否则返回true。- stateMachine()#
- 返回类型:
返回与数据模型关联的状态机。
另请参阅
stateMachine属性的获取器。- stateMachineChanged(stateMachine)#
- 参数:
状态机 –
QScxmlStateMachine
stateMachine属性的通知信号。