状态 QML 类型
为 StateMachine 提供一个通用的状态。 更多信息...
导入语句 | import QtQml.StateMachine 6.7 |
继承自 | |
由以下类继承 |
属性
- childMode : 枚举
- errorState : QAbstractState
- initialState : QAbstractState
信号
- finished()
详细描述
状态对象可以有子状态,也可以有到其他状态的转换。状态是 Qt 状态机 QML API 的一部分。
具有子状态的状态
childMode 属性决定了如何处理子状态。对于非并行状态组,必须使用 initialState 属性来设置初始状态。子状态是互斥的,当父状态是转换的目标时,状态机需要知道要进入哪个子状态。
当进入最终的子状态(FinalState)时,状态发出 State::finished() 信号。
errorState 设置状态的错误状态。如果当尝试进入状态时检测到错误(例如,因为没有设置初始状态),状态机将转换到错误状态。
用法示例
import QtQuick import QtQml.StateMachine as DSM Rectangle { DSM.StateMachine { id: stateMachine initialState: state running: true DSM.State { id: state } } }
另请参阅StateMachine 和 FinalState。
属性文档
childMode : 枚举 |
此状态的子模式
此属性的默认值是 QState.ExclusiveStates。
此枚举指定如何处理状态子状态
- QState.ExclusiveStates 子状态是互斥的,并且必须通过设置 initialState 属性来设置初始状态。
- QState.ParallelStates 子状态是并行的。当进入父状态时,将并行进入其所有子状态。
errorState : QAbstractState |
此状态的错误状态。
初始状态 : QAbstractState |
此状态(其子状态之一)的初始状态。
信号文档
finished() |
当进入此状态的最终子状态时,会发出此信号。
注意:相应的处理程序是onFinished
。
另请参阅:QAbstractState::active、QAbstractState::entered和QAbstractState::exited。
© 2024 Qt公司。本文件中包含的文档贡献的版权归各自所有者所有。本文件提供的文档是根据自由软件基金会发布并由其使用的GNU自由文档许可证版本1.3的条款许可的。Qt及其相关标志是芬兰及全球其他地区Qt公司的商标。所有其他商标均为各自所有者的财产。