JAC*_*TER 9 c++ qt qstatemachine
我正在尝试在Qt(C++)中实现状态机.如何检查QStateMachine的当前状态?我在文档中找不到方法.
谢谢
Hem*_*lia 14
你试过QStateMachine::configuration()吗?
参考http://www.qtcentre.org/threads/42085-How-to-get-the-current-state-of-QStateMachine
摘自上面的网址:
// QStateMachine::configuration() gives you the current states.
while(stateMachine->configuration().contains(s2))
{
//do something
}
Run Code Online (Sandbox Code Playgroud)
您可以将属性分配给QStateMachine本身.
// QState m_State1;
// QState m_State2;
// QStateMachine m_Machine;
m_State1.assignProperty(m_Label, "visible", false);
m_State1.assignProperty(&m_Machine, "state", 1);
m_State2.assignProperty(m_Label, "visible", true);
m_State2.assignProperty(&m_Machine, "state", 2);
Run Code Online (Sandbox Code Playgroud)
然后,可以从动态属性中读取当前状态.
qDebug() << m_Machine.property("state");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7479 次 |
| 最近记录: |