Home · All Classes · Modules · QSS HELP · QSS 案例 · VER007 HOME · |
该QAbstractAnimation类是所有动画的基础。More...
继承QObject。
通过继承QAnimationGroup,QPauseAnimation和QVariantAnimation。
该QAbstractAnimation类是所有动画的基础。
这个类定义了所有的动画共享的功能的功能。通过继承这个类,您可以创建自定义动画,插入的动画框架的其馀部分。
动画的进度是由它的当前时间(给定currentLoopTime()),这是从动画开始以毫秒为单位(0)到它的端部(duration())。动画运行时的值会自动更新。它也可以直接与设置setCurrentTime( ) 。
在任何时候动画是在三种状态之一:Running,Stopped或Paused - 被定义State枚举。目前的状态可以通过调用改变start( )stop( )pause() ,或resume( ) 。动画将重新设定其current time当它被启动。如果暂停,它会继续恢复时相同的当前时间。当动画停止时,它不能被恢复,但将保持其当前时间(直到再次启动)。 QAbstractAnimation会发出stateChanged( )每当它的状态的变化。
动画可以循环通过设置任意数量的倍loopCount属性。当动画的当前时间达到duration( ) ,它会重置当前的时间,并保持运行。为1,循环次数(默认值)表示该动画将运行一次。需要注意的是-1的持续时间意味着动画将运行到停止,当前的时间将增加下去。当当前时间等于duration()和动画是在其最后循环中,Stopped进入状态,而finished()信号被发射。
QAbstractAnimation提供由子类用于跟踪动画的进度纯虚函数:duration()和updateCurrentTime( ) 。该duration( )函数可以报告一个持续时间为动画(如上所述) 。动画框架调用updateCurrentTime( )时,当前时间已更改。通过重新实现此功能,您可以跟踪动画进度。请注意,无论呼叫也不调用该函数的数量之间的间隔被定义,虽然,它通常是每秒60更新。
通过重新实现updateState( ) ,你可以跟踪动画的状态发生变化,这是不是由时间驱动的动画特别有用。
Constant | Value | Description |
---|---|---|
QAbstractAnimation.KeepWhenStopped | 0 | 停止时的动画效果将不会被删除。 |
QAbstractAnimation.DeleteWhenStopped | 1 | 停止时,动画将被自动删除。 |
这个枚举变量描述了动画的方向时,Running状态。
Constant | Value | Description |
---|---|---|
QAbstractAnimation.Forward | 0 | 随时间的增加动画的当前时间(即从0到接近尾声/时间移动) 。 |
QAbstractAnimation.Backward | 1 | 随着时间(即从底/持续时间和对0移动)动画的当前时间减少。 |
See also direction。
这个枚举变量描述了动画的状态。
Constant | Value | Description |
---|---|---|
QAbstractAnimation.Stopped | 0 | 动画没有运行。这是初始状态QAbstractAnimation,和国家QAbstractAnimation重新进入时完成。当前时间保持不变,直至setCurrentTime()被调用,或动画是通过调用启动start( ) 。 |
QAbstractAnimation.Paused | 1 | 动画暂停(即暂停) 。调用resume( )将恢复动画活动。 |
QAbstractAnimation.Running | 2 | 在动画运行。而控制是在事件循环,QAbstractAnimation将定期更新其当前的时间,调用updateCurrentTime( )在适当的时候。 |
See also state()和stateChanged( ) 。
该parent的说法,如果不是没有,原因self通过Qt的,而不是PyQt的拥有。
构建QAbstractAnimation基类和通行证parent至QObject的构造。
See also QVariantAnimation和QAnimationGroup。
返回当前循环内的当前时间。它可以从0到duration( ) 。
See also duration()和currentTime。
这种方法是抽象的,应在任何子类中重新实现。
从重新实现QObject.event( ) 。
如果这个动画的一部分QAnimationGroup,这个函数返回一个指针到组,否则返回0 。
See also QAnimationGroup.addAnimation( ) 。
这种方法也是一个Qt槽与C + +的签名void pause()。
暂停动画。当动画暂停时,state()返回暂停。价值currentTime将保持不变,直到resume()或start()被调用。如果你想从当前时间继续,请致电resume( ) 。
See also start( )state()和resume( ) 。
这种方法也是一个Qt槽与C + +的签名void resume()。
它恢复暂停后动画。当动画恢复时,它发出的恢复()和stateChanged( )信号。该currentTime的不被改变。
See also start( )pause()和state( ) 。
这种方法也是一个Qt槽与C + +的签名void setCurrentTime(int)。
这种方法也是一个Qt槽与C + +的签名void setPaused(bool)。
If paused诚然,动画暂停。如果paused是假的,动画重新开始。
See also state( )pause()和resume( ) 。
这种方法也是一个Qt槽与C + +的签名void start(QAbstractAnimation::DeletionPolicy = QAbstractAnimation.KeepWhenStopped)。
启动动画。该policy论证说,不论是否当它完成的动画应该被删除。当动画开始,则stateChanged()信号被发射,和state()返回运行。当控制到达事件循环,动画将自行运行,周期性地调用updateCurrentTime( )作为动画的进展。
如果动画目前已停止或已走到了尽头,调用start ( )将回放动画,并从头开始。当动画到达末尾时,动画要么停止,或者如果在循环水平大于1,它会倒带,并从开头继续。
如果动画已经在运行,这个函数不执行任何操作。
这种方法也是一个Qt槽与C + +的签名void stop()。
停止播放动画。当动画停止时,它发出的stateChanged()信号,并state( )返回时停止。当前的时间不会改变。
如果在到达终点后停止动画本身(即,currentLoopTime()==duration()和currentLoop( ) \u003eloopCount() - 1 ),则finished()信号被发射。
返回动画的总有效和持续时间,包括循环计数。
See also duration()和currentTime。
这种方法是抽象的,应在任何子类中重新实现。
这个纯虚函数被调用每次动画的currentTime变化。
See also updateState( ) 。
这个虚函数被调用QAbstractAnimation当动画的方向被改变。该direction参数是新的方向。
See also setDirection()和direction( ) 。
这个虚函数被调用QAbstractAnimation当动画的状态从变oldState至newState。
See also start( )stop( )pause()和resume( ) 。
这是该信号的默认超载。
QAbstractAnimation发出该信号时电流回路的改变。currentLoop是电流回路。
See also currentLoop()和loopCount( ) 。
这是该信号的默认超载。
QAbstractAnimation发出该信号时的方向已经改变。newDirection是新的方向。
See also direction。
这是该信号的默认超载。
QAbstractAnimation发出此信号后的动画已经停止,并已达到结束。
之后此信号被发射stateChanged( ) 。
See also stateChanged( ) 。
这是该信号的默认超载。
QAbstractAnimation发出这个信号时动画的状态已经从oldState至newState。之后虚拟这个信号被发射updateState( )函数被调用。
See also updateState( ) 。
PyQt 4.10.3 for X11 | Copyright © Riverbank Computing Ltd and Nokia 2012 | Qt 4.8.5 |