QSequentialAnimationGroup Class

The QSequentialAnimationGroup class provides a sequential group of animations. More...

Header: #include <QSequentialAnimationGroup>
qmake: QT += core
Since: Qt 4.6
Inherits: QAnimationGroup


Public Functions

QSequentialAnimationGroup(QObject *parent = Q_NULLPTR)
QPauseAnimation *addPause(int msecs)
QAbstractAnimation *currentAnimation() const
QPauseAnimation *insertPause(int index, int msecs)

Reimplemented Public Functions

virtual int duration() const


void currentAnimationChanged(QAbstractAnimation *current)

Reimplemented Protected Functions

virtual bool event(QEvent *event)
virtual void updateCurrentTime(int currentTime)
virtual void updateDirection(QAbstractAnimation::Direction direction)
virtual void updateState(QAbstractAnimation::State newState, QAbstractAnimation::State oldState)

Additional Inherited Members

Detailed Description

The QSequentialAnimationGroup class provides a sequential group of animations.

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;



In this example, anim1 and anim2 are two already set up QPropertyAnimations.

See also QAnimationGroup, QAbstractAnimation, and The Animation Framework.

Property Documentation

currentAnimation : QAbstractAnimation * const

Returns the animation in the current time.

Access functions:

QAbstractAnimation *currentAnimation() const

Notifier signal:

void currentAnimationChanged(QAbstractAnimation *current)

Member Function Documentation

QSequentialAnimationGroup::QSequentialAnimationGroup(QObject *parent = Q_NULLPTR)

Constructs a QSequentialAnimationGroup. parent is passed to QObject's constructor.


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().

[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] int QSequentialAnimationGroup::duration() const

Reimplemented from QAbstractAnimation::duration().

[virtual protected] bool QSequentialAnimationGroup::event(QEvent *event)

Reimplemented from QObject::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().

[virtual protected] void QSequentialAnimationGroup::updateCurrentTime(int currentTime)

Reimplemented from QAbstractAnimation::updateCurrentTime().

[virtual protected] void QSequentialAnimationGroup::updateDirection(QAbstractAnimation::Direction direction)

Reimplemented from QAbstractAnimation::updateDirection().

[virtual protected] void QSequentialAnimationGroup::updateState(QAbstractAnimation::State newState, QAbstractAnimation::State oldState)

Reimplemented from QAbstractAnimation::updateState().

© 2017 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.