PySide6.QtScxml.QScxmlDataModel

class QScxmlDataModel

QScxmlDataModel 类是 Qt SCXML 状态机的数据模型基类。More_

PySide6.QtScxml.QScxmlDataModel 的继承图

继承自: QScxmlNullDataModel, QScxmlCppDataModel

概要

属性

方法

虚拟方法

信号

静态函数

注意

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

详细描述

SCXML数据模型在SCXML规范 - 5 数据模型和数据操作中描述。有关支持的数据模型的更多信息,请参阅SCXML合规性

一个数据模型只能属于一个状态机。

注意

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

property stateMachineᅟ: QScxmlStateMachine

此属性保存此数据模型所属的状态机。

一个数据模型只能属于一个状态机,而一个状态机只能有一个数据模型。这种关系需要在状态机启动之前建立。在数据模型上设置此属性将自动在stateMachine上设置相应的dataModel属性。

Access functions:
__init__([parent=None])
Parameters:

父对象QObject

创建一个新的数据模型,父对象为 parent

static createScxmlDataModel(pluginKey)
Parameters:

pluginKey – str

Return type:

QScxmlDataModel

从由pluginKey指定的插件创建数据模型。

abstract evaluateAssignment(id, ok)
Parameters:
  • id – int

  • ok – 布尔值

评估由id指向的赋值,如果出现错误,则将ok设置为false,如果没有错误,则设置为true

abstract evaluateForeach(id, ok, body)
Parameters:

评估由id指向的foreach循环,并在出现错误时将ok设置为false,如果没有错误则设置为true。每次迭代时都会执行body

abstract evaluateInitialization(id, ok)
Parameters:
  • id – int

  • ok – 布尔值

评估由id指向的初始化,如果出现错误,则将ok设置为false;如果没有错误,则设置为true

abstract evaluateToBool(id)
Parameters:

id – int

Return type:

布尔

评估由id指向的可执行内容,并在出现错误时将ok设置为false,如果没有错误则设置为true。返回评估结果作为布尔值。

abstract evaluateToString(id)
Parameters:

id – int

Return type:

字符串

评估由id指向的可执行内容,并在出现错误时将ok设置为false,如果没有错误则设置为true。返回评估结果作为QString。

abstract evaluateToVariant(id)
Parameters:

id – int

Return type:

对象

评估由id指向的可执行内容,并在出现错误时将ok设置为false,如果没有错误则设置为true。将评估结果作为QVariant返回。

abstract evaluateToVoid(id, ok)
Parameters:
  • id – int

  • ok – 布尔值

评估由id指向的可执行内容,并在出现错误时将ok设置为false,如果没有错误则设置为true。预计执行不会返回任何结果。

abstract hasScxmlProperty(name)
Parameters:

name – str

Return type:

布尔

如果存在具有给定name的属性,则返回true,否则返回false

abstract scxmlProperty(name)
Parameters:

name – str

Return type:

对象

返回属性name的值。

另请参阅

setScxmlProperty()

abstract setScxmlEvent(event)
Parameters:

事件QScxmlEvent

设置event以用于后续可执行内容的执行。

abstract setScxmlProperty(name, value, context)
Parameters:
  • name – str

  • value – 对象

  • context – str

Return type:

布尔

为属性 name 设置值 value

context 是一个字符串,用于在错误消息中指示 SCXML 文件中发生错误的位置。

如果成功则返回 true,如果发生错误则返回 false

另请参阅

scxmlProperty()

setStateMachine(stateMachine)
Parameters:

stateMachineQScxmlStateMachine

将此模型所属的状态机设置为stateMachine。状态机和模型之间存在1:1的关系。一旦设置了状态机,就不能再更改它。任何进一步尝试使用此方法设置状态机的操作都将被忽略。

另请参阅

stateMachine()

属性 stateMachineᅟ 的设置器。

abstract setup(initialDataValues)
Parameters:

initialDataValues – 字典,键类型为 .QString,值类型为 QVariant。

Return type:

布尔

使用initialDataValues指定的初始值初始化数据模型。

如果发生解析错误或任何初始化步骤失败,则返回false。否则返回true

stateMachine()
Return type:

QScxmlStateMachine

返回与数据模型关联的状态机。

另请参阅

setStateMachine()

属性 stateMachineᅟ 的获取器。

stateMachineChanged(stateMachine)
Parameters:

stateMachineQScxmlStateMachine

属性 stateMachineᅟ 的通知信号。

class ForeachLoopBody

ForeachLoopBody 类表示在 SCXML foreach 循环的每次迭代中要执行的函数。More_

概要

方法

虚拟方法

注意

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

详细描述

__init__()

创建一个新的foreach循环体。

abstract run(ok)
Parameters:

ok – 布尔值

此函数在每次迭代时执行。如果执行失败,ok 被设置为 false,否则设置为 true