QSequentialAnimationGroup Class
The QSequentialAnimationGroup class provides a sequential group of animations. More...
Header: | #include <QSequentialAnimationGroup> |
CMake: | find_package(Qt6 COMPONENTS Core REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Core) |
qmake: | QT += core |
Inherits: | QAnimationGroup |
Properties
- currentAnimation : QAbstractAnimation*
Public Functions
QSequentialAnimationGroup(QObject *parent = nullptr) | |
virtual | ~QSequentialAnimationGroup() |
QPauseAnimation * | addPause(int msecs) |
QAbstractAnimation * | currentAnimation() const |
QPauseAnimation * | insertPause(int index, int msecs) |
Reimplemented Public Functions
virtual int | duration() const override |
Signals
void | currentAnimationChanged(QAbstractAnimation *current) |
Reimplemented Protected Functions
virtual bool | event(QEvent *event) override |
virtual void | updateCurrentTime(int currentTime) override |
virtual void | updateDirection(QAbstractAnimation::Direction direction) override |
virtual void | updateState(QAbstractAnimation::State newState, QAbstractAnimation::State oldState) override |
Detailed Description
QSequentialAnimationGroup is a QAnimationGroup that runs its animations in sequence, i.e., it starts one animation after another has finished playing. The animations are played in the order they are added to the group (using addAnimation() or insertAnimation()). The animation group finishes when its last animation has finished.
At each moment there is at most one animation that is active in the group; it is returned by currentAnimation(). An empty group has no current animation.
A sequential animation group can be treated as any other animation, i.e., it can be started, stopped, and added to other groups. You can also call addPause() or insertPause() to add a pause to a sequential animation group.
QSequentialAnimationGroup *group = new QSequentialAnimationGroup; group->addAnimation(anim1); group->addAnimation(anim2); group->start();
In this example, anim1
and anim2
are two already set up QPropertyAnimations.
See also QAnimationGroup, QAbstractAnimation, and The Animation Framework.
Property Documentation
[bindable read-only]
currentAnimation : QAbstractAnimation*
Note: This property supports QProperty bindings.
This property holds the animation in the current time.
Member Function Documentation
QSequentialAnimationGroup::QSequentialAnimationGroup(QObject *parent = nullptr)
Constructs a QSequentialAnimationGroup. parent is passed to QObject's constructor.
[signal]
void QSequentialAnimationGroup::currentAnimationChanged(QAbstractAnimation *current)
QSequentialAnimationGroup emits this signal when currentAnimation has been changed. current is the current animation.
Note: Notifier signal for property currentAnimation.
See also currentAnimation().
[virtual]
QSequentialAnimationGroup::~QSequentialAnimationGroup()
Destroys the animation group. It will also destroy all its animations.
QPauseAnimation *QSequentialAnimationGroup::addPause(int msecs)
Adds a pause of msecs to this animation group. The pause is considered as a special type of animation, thus animationCount will be increased by one.
See also insertPause() and QAnimationGroup::addAnimation().
[override virtual]
int QSequentialAnimationGroup::duration() const
Reimplements: QAbstractAnimation::duration() const.
[override virtual protected]
bool QSequentialAnimationGroup::event(QEvent *event)
Reimplements: QAnimationGroup::event(QEvent *event).
QPauseAnimation *QSequentialAnimationGroup::insertPause(int index, int msecs)
Inserts a pause of msecs milliseconds at index in this animation group.
See also addPause() and QAnimationGroup::insertAnimation().
[override virtual protected]
void QSequentialAnimationGroup::updateCurrentTime(int currentTime)
Reimplements: QAbstractAnimation::updateCurrentTime(int currentTime).
[override virtual protected]
void QSequentialAnimationGroup::updateDirection(QAbstractAnimation::Direction direction)
Reimplements: QAbstractAnimation::updateDirection(QAbstractAnimation::Direction direction).
[override virtual protected]
void QSequentialAnimationGroup::updateState(QAbstractAnimation::State newState, QAbstractAnimation::State oldState)
Reimplements: QAbstractAnimation::updateState(QAbstractAnimation::State newState, QAbstractAnimation::State oldState).