QSequentialAnimationGroup Class

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

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

Properties

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

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;

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

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 = nullptr)

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

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

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

[override virtual] int QSequentialAnimationGroup::duration() const

Reimplemented from QAbstractAnimation::duration().

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

Reimplemented from QAnimationGroup::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)

Reimplemented from QAbstractAnimation::updateCurrentTime().

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

Reimplemented from QAbstractAnimation::updateDirection().

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

Reimplemented from QAbstractAnimation::updateState().

Voted #1 for:

  • Easiest to learn
  • Most time saving
  • Best support

Develop Cross-Platform Apps and Games 50% Faster!

  • Voted the best supported, most time-saving and easiest to learn cross-platform development tool
  • Based on the Qt framework, with native performance and appearance on all platforms including iOS and Android
  • Offers a variety of plugins to monetize, analyze and engage users
FREE!
create apps
create games
cross platform
native performance
3rd party services
game network
multiplayer
level editor
easiest to learn
biggest time saving
best support