Home · All Classes · Modules  · QSS HELP  · QSS 案例 · VER007 HOME

QState Class Reference
[QtCore module]

该QState类提供了一个通用的状态QStateMachineMore...

继承QAbstractState

通过继承QStateMachine

Types

Methods

Qt Signals


Detailed Description

该QState类提供了一个通用的状态QStateMachine

QState对象可以有子状态,可以有过渡到其他国家。 QState是一部分The State Machine Framework

addTransition( )函数添加一个过渡。该removeTransition( )函数删除一个过渡。该transitions( )函数返回的状态的向外的转移。

assignProperty( )函数用于定义当进入一种状态,应该进行财产分配。

顶级状态,必须通过一个QStateMachine对象作为它们的父状态,或者使用加入到一个状态机QStateMachine.addState( ) 。

States with Child States

childMode属性决定了孩子的状态对待。对于非平行状态群体,setInitialState( )函数必须被调用来设置初始状态。孩子的状态是相互排斥的状态,状态机需要知道进入哪个孩子的状态时,父状态是一个过渡的目标。

国家发出的QState.finished( )信号,当最后一个孩子的状态(QFinalState)进入。

setErrorState()设置状态的错误状态。错误状态是状态机将过渡,如果当试图进入状态(例如,因为没有初始状态已经设置)检测到一个错误的状态。


Type Documentation

QState.ChildMode

此枚举指定如何一个国家的孩子状态处理。

Constant Value Description
QState.ExclusiveStates 0 孩子的状态是互斥的,初始状态必须通过调用设置QState.setInitialState( ) 。
QState.ParallelStates 1 孩子的状态是平行的。当进入母体的状态,它的所有子状态进入并行。

Method Documentation

QState.__init__ (self, QState parent = None)

parent的说法,如果不是没有,原因self通过Qt的,而不是PyQt的拥有。

构造一个新的状态,用给定的parent状态。

QState.__init__ (self, ChildMode childMode, QState parent = None)

parent的说法,如果不是没有,原因self通过Qt的,而不是PyQt的拥有。

构造一个新的状态,用给定的childMode和给定的parent状态。

QState.addTransition (self, QAbstractTransition transition)

transition说法有它的所有权转移给Qt的。

将给定transition。过渡拥有此状态为源。这个状态需要过渡的所有权。

QSignalTransition QState.addTransition (self, QObject sender, SIGNAL() signal, QAbstractState target)

增加了与给定关联的过渡signal的给定sender对象,并返回新QSignalTransition对象。过渡拥有此状态为源,和给定target作为目标的状态。

QSignalTransition QState.addTransition (self, signal signal, QAbstractState target)

增加了一个无条件的过渡从这种状态给定的target状态,然后返回新的转换对象。

QAbstractTransition QState.addTransition (self, QAbstractState target)

target说法有它的所有权转移给Qt的。

QState.assignProperty (self, QObject object, str name, QVariant value)

指示这种状态的属性与给定的设置name的给定object为给定的value当进入状态。

See also propertiesAssigned( ) 。

ChildMode QState.childMode (self)

QAbstractState QState.errorState (self)

bool QState.event (self, QEvent e)

从重新实现QObject.event( ) 。

QAbstractState QState.initialState (self)

QState.onEntry (self, QEvent event)

从重新实现QAbstractState.onEntry( ) 。

QState.onExit (self, QEvent event)

从重新实现QAbstractState.onExit( ) 。

QState.removeTransition (self, QAbstractTransition transition)

transition争论

删除给定的transition从这种状态。过渡状态释放所有权。

See also addTransition( ) 。

QState.setChildMode (self, ChildMode mode)

QState.setErrorState (self, QAbstractState state)

QState.setInitialState (self, QAbstractState state)

list-of-QAbstractTransition QState.transitions (self)

返回此状态的外向转移(即过渡的地方这种状态是source state) ,或一个空列表,如果这个国家没有向外的转移。

此功能被引入Qt的4.7 。

See also addTransition( ) 。


Qt Signal Documentation

void finished ()

这是该信号的默认超载。

当进入最后孩子的这个状态状态这个信号被发射。

See also QFinalState

void propertiesAssigned ()

这是该信号的默认超载。

当所有的属性都被分配了他们的最终值这个信号被发射。如果国家分配一个值,来完成一个动画存在一个或多个属性(或者设置在过渡或作为默认的动画状态机) ,那么信号将不发射,直到所有这样的动画已经播放完毕。

如果没有相关的动画,或为国家中没有定义属性赋值,那么信号将被立即发射的进入状态之前。

See also QState.assignProperty()和QAbstractTransition.addAnimation( ) 。




PyQt 4.10.3 for X11 Copyright © Riverbank Computing Ltd and Nokia 2012 Qt 4.8.5