继承者: QVariantAnimation , QPropertyAnimation , QPauseAnimation , QAnimationGroup , QSequentialAnimationGroup , QParallelAnimationGroup
注意
该类在 Qt4.6 引入
PySide.QtCore.QAbstractAnimation class is the base of all animations.
The class defines the functions for the functionality shared by all animations. By inheriting this class, you can create custom animations that plug into the rest of the animation framework.
The progress of an animation is given by its current time ( PySide.QtCore.QAbstractAnimation.currentLoopTime() ), which is measured in milliseconds from the start of the animation (0) to its end ( PySide.QtCore.QAbstractAnimation.duration() ). The value is updated automatically while the animation is running. It can also be set directly with PySide.QtCore.QAbstractAnimation.setCurrentTime() .
At any point an animation is in one of three states: 运行 , Stopped ,或 Paused –as defined by the QAbstractAnimation.State enum. The current state can be changed by calling PySide.QtCore.QAbstractAnimation.start() , PySide.QtCore.QAbstractAnimation.stop() , PySide.QtCore.QAbstractAnimation.pause() ,或 PySide.QtCore.QAbstractAnimation.resume() . An animation will always reset its current time when it is started. If paused, it will continue with the same current time when resumed. When an animation is stopped, it cannot be resumed, but will keep its current time (until started again). PySide.QtCore.QAbstractAnimation 将发射 PySide.QtCore.QAbstractAnimation.stateChanged() whenever its state changes.
An animation can loop any number of times by setting the PySide.QtCore.QAbstractAnimation.loopCount() property. When an animation's current time reaches its PySide.QtCore.QAbstractAnimation.duration() , it will reset the current time and keep running. A loop count of 1 (the default value) means that the animation will run one time. Note that a duration of -1 means that the animation will run until stopped; the current time will increase indefinitely. When the current time equals PySide.QtCore.QAbstractAnimation.duration() and the animation is in its final loop, the Stopped state is entered, and the PySide.QtCore.QAbstractAnimation.finished() 信号被发射。
PySide.QtCore.QAbstractAnimation provides pure virtual functions used by subclasses to track the progress of the animation: PySide.QtCore.QAbstractAnimation.duration() and PySide.QtCore.QAbstractAnimation.updateCurrentTime() 。 PySide.QtCore.QAbstractAnimation.duration() function lets you report a duration for the animation (as discussed above). The animation framework calls PySide.QtCore.QAbstractAnimation.updateCurrentTime() when current time has changed. By reimplementing this function, you can track the animation progress. Note that neither the interval between calls nor the number of calls to this function are defined; though, it will normally be 60 updates per second.
By reimplementing PySide.QtCore.QAbstractAnimation.updateState() , you can track the animation's state changes, which is particularly useful for animations that are not driven by time.
| 参数: | parent – PySide.QtCore.QObject |
|---|
构造 PySide.QtCore.QAbstractAnimation base class, and passes parent to PySide.QtCore.QObject ‘s constructor.
This enum describes the direction of the animation when in 运行 状态。
| 常量 | 描述 |
|---|---|
| QAbstractAnimation.Forward | The current time of the animation increases with time (i.e., moves from 0 and towards the end / duration). |
| QAbstractAnimation.Backward | The current time of the animation decreases with time (i.e., moves from the end / duration and towards 0). |
| 常量 | 描述 |
|---|---|
| QAbstractAnimation.KeepWhenStopped | The animation will not be deleted when stopped. |
| QAbstractAnimation.DeleteWhenStopped | The animation will be automatically deleted when stopped. |
This enum describes the state of the animation.
| 常量 | 描述 |
|---|---|
| QAbstractAnimation.Stopped | The animation is not running. This is the initial state of PySide.QtCore.QAbstractAnimation , and the state PySide.QtCore.QAbstractAnimation reenters when finished. The current time remain unchanged until either PySide.QtCore.QAbstractAnimation.setCurrentTime() is called, or the animation is started by calling PySide.QtCore.QAbstractAnimation.start() . |
| QAbstractAnimation.Paused | The animation is paused (i.e., temporarily suspended). Calling PySide.QtCore.QAbstractAnimation.resume() will resume animation activity. |
| QAbstractAnimation.Running | The animation is running. While control is in the event loop, PySide.QtCore.QAbstractAnimation will update its current time at regular intervals, calling PySide.QtCore.QAbstractAnimation.updateCurrentTime() when appropriate. |
| 返回类型: | PySide.QtCore.int |
|---|
This property holds the current loop of the animation.
This property describes the current loop of the animation. By default, the animation's loop count is 1, and so the current loop will always be 0. If the loop count is 2 and the animation runs past its duration, it will automatically rewind and restart at current time 0, and current loop 1, and so on.
When the current loop changes, PySide.QtCore.QAbstractAnimation 发射 PySide.QtCore.QAbstractAnimation.currentLoopChanged() 信号。
| 参数: | currentLoop – PySide.QtCore.int |
|---|
| 返回类型: | PySide.QtCore.int |
|---|
Returns the current time inside the current loop. It can go from 0 to PySide.QtCore.QAbstractAnimation.duration() .
| 返回类型: | PySide.QtCore.int |
|---|
This property holds the current time and progress of the animation.
This property describes the animation's current time. You can change the current time by calling setCurrentTime, or you can call PySide.QtCore.QAbstractAnimation.start() and let the animation run, setting the current time automatically as the animation progresses.
The animation's current time starts at 0, and ends at PySide.QtCore.QAbstractAnimation.totalDuration() .
| 返回类型: | PySide.QtCore.QAbstractAnimation.Direction |
|---|
This property holds the direction of the animation when it is in 运行 state..
This direction indicates whether the time moves from 0 towards the animation duration, or from the value of the duration and towards 0 after PySide.QtCore.QAbstractAnimation.start() has been called.
默认情况下,此特性被设为 Forward .
| 参数: | arg__1 – PySide.QtCore.QAbstractAnimation.Direction |
|---|
| 返回类型: | PySide.QtCore.int |
|---|
This property holds the duration of the animation..
If the duration is -1, it means that the duration is undefined. In this case, PySide.QtCore.QAbstractAnimation.loopCount() 被忽略。
| 返回类型: | PySide.QtCore.QAnimationGroup |
|---|
若此动画属于 PySide.QtCore.QAnimationGroup , this function returns a pointer to the group; otherwise, it returns 0.
| 返回类型: | PySide.QtCore.int |
|---|
This property holds the loop count of the animation.
This property describes the loop count of the animation as an integer. By default this value is 1, indicating that the animation should run once only, and then stop. By changing it you can let the animation loop several times. With a value of 0, the animation will not run at all, and with a value of -1, the animation will loop forever until stopped. It is not supported to have loop on an animation that has an undefined duration. It will only run once.
暂停动画。当动画被暂停时, PySide.QtCore.QAbstractAnimation.state() returns Paused. The value of PySide.QtCore.QAbstractAnimation.currentTime() will remain unchanged until PySide.QtCore.QAbstractAnimation.resume() or PySide.QtCore.QAbstractAnimation.start() is called. If you want to continue from the current time, call PySide.QtCore.QAbstractAnimation.resume() .
Resumes the animation after it was paused. When the animation is resumed, it emits the resumed() and PySide.QtCore.QAbstractAnimation.stateChanged() signals. The currenttime is not changed.
| 参数: | msecs – PySide.QtCore.int |
|---|
This property holds the current time and progress of the animation.
This property describes the animation's current time. You can change the current time by calling setCurrentTime, or you can call PySide.QtCore.QAbstractAnimation.start() and let the animation run, setting the current time automatically as the animation progresses.
The animation's current time starts at 0, and ends at PySide.QtCore.QAbstractAnimation.totalDuration() .
| 参数: | direction – PySide.QtCore.QAbstractAnimation.Direction |
|---|
This property holds the direction of the animation when it is in 运行 state..
This direction indicates whether the time moves from 0 towards the animation duration, or from the value of the duration and towards 0 after PySide.QtCore.QAbstractAnimation.start() has been called.
默认情况下,此特性被设为 Forward .
| 参数: | loopCount – PySide.QtCore.int |
|---|
This property holds the loop count of the animation.
This property describes the loop count of the animation as an integer. By default this value is 1, indicating that the animation should run once only, and then stop. By changing it you can let the animation loop several times. With a value of 0, the animation will not run at all, and with a value of -1, the animation will loop forever until stopped. It is not supported to have loop on an animation that has an undefined duration. It will only run once.
| 参数: | arg__1 – PySide.QtCore.bool |
|---|
若 paused is true, the animation is paused. If paused is false, the animation is resumed.
| 参数: | policy – PySide.QtCore.QAbstractAnimation.DeletionPolicy |
|---|
| 返回类型: | PySide.QtCore.QAbstractAnimation.State |
|---|
This property holds state of the animation..
This property describes the current state of the animation. When the animation state changes, PySide.QtCore.QAbstractAnimation 发射 PySide.QtCore.QAbstractAnimation.stateChanged() 信号。
| 参数: |
|
|---|
Stops the animation. When the animation is stopped, it emits the PySide.QtCore.QAbstractAnimation.stateChanged() signal, and PySide.QtCore.QAbstractAnimation.state() returns Stopped. The current time is not changed.
If the animation stops by itself after reaching the end (i.e., PySide.QtCore.QAbstractAnimation.currentLoopTime() == PySide.QtCore.QAbstractAnimation.duration() and PySide.QtCore.QAbstractAnimation.currentLoop() > PySide.QtCore.QAbstractAnimation.loopCount() - 1), the PySide.QtCore.QAbstractAnimation.finished() 信号被发射。
| 返回类型: | PySide.QtCore.int |
|---|
Returns the total and effective duration of the animation, including the loop count.
| 参数: | currentTime – PySide.QtCore.int |
|---|
This pure virtual function is called every time the animation's currentTime 改变。
| 参数: | direction – PySide.QtCore.QAbstractAnimation.Direction |
|---|
| 参数: |
|
|---|