このページでは

QSequentialAnimationGroup Class

QSequentialAnimationGroup クラスは、連続したアニメーションのグループを提供します。詳細...

ヘッダー: #include <QSequentialAnimationGroup>
CMake: find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake: QT += core
継承元: QAnimationGroup

プロパティ

パブリック関数

QSequentialAnimationGroup(QObject *parent = nullptr)
virtual ~QSequentialAnimationGroup()
QPauseAnimation *addPause(int msecs)
QBindable<QAbstractAnimation *> bindableCurrentAnimation() const
QAbstractAnimation *currentAnimation() const
QPauseAnimation *insertPause(int index, int msecs)

再実装されたパブリック関数

virtual int duration() const override

シグナル

void currentAnimationChanged(QAbstractAnimation *current)

再実装された保護関数

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

詳細な説明

QSequentialAnimationGroup は、アニメーションを順番に実行するQAnimationGroup です。つまり、あるアニメーションの再生が終了すると、次のアニメーションが開始されます。アニメーションは、グループに追加された順序(addAnimation() またはinsertAnimation() を使用)で再生されます。アニメーショングループは、最後のアニメーションが終了すると終了します。

各時点において、グループ内でアクティブなアニメーションは最大1つであり、これはcurrentAnimation()によって返されます。空のグループには、現在のアニメーションは存在しません。

シーケンシャル・アニメーショングループは、他のアニメーションと同様に扱うことができます。つまり、開始、停止、および他のグループへの追加が可能です。また、addPause() またはinsertPause() を呼び出して、シーケンシャル・アニメーショングループに一時停止を追加することもできます。

    QSequentialAnimationGroup *group = new QSequentialAnimationGroup;

    group->addAnimation(anim1);
    group->addAnimation(anim2);

    group->start();

この例では、anim1 とanim2 は、すでに設定済みのQPropertyAnimationです。

「 QAnimationGroup 」、「QAbstractAnimation 」、および「アニメーションフレームワーク」も参照してください 。

プロパティのドキュメント

[bindable read-only] currentAnimation : QAbstractAnimation*

注:この プロパティは、QProperty バインディングに対応しています。

このプロパティは、現在の時点でのアニメーションの状態を保持します。

アクセス関数:

QAbstractAnimation *currentAnimation() const

通知シグナル:

void currentAnimationChanged(QAbstractAnimation *current)

メンバ関数のドキュメント

QSequentialAnimationGroup::QSequentialAnimationGroup(QObject *parent = nullptr)

QSequentialAnimationGroup を生成します。parent は、QObject のコンストラクタに渡されます。

[virtual noexcept] QSequentialAnimationGroup::~QSequentialAnimationGroup()

アニメーショングループを削除します。また、そのグループに含まれるすべてのアニメーションも削除されます。

QPauseAnimation *QSequentialAnimationGroup::addPause(int msecs)

このアニメーショングループにmsecs の休止を追加します。この休止は特別な種類のアニメーションとみなされるため、animationCount が1増加します。

insertPause() およびQAnimationGroup::addAnimation()も参照してください 。

[signal] void QSequentialAnimationGroup::currentAnimationChanged(QAbstractAnimation *current)

QSequentialAnimationGroup currentAnimation が変更されたときに、このシグナルを発行します。 は現在のアニメーションです。current

注: プロパティ `currentAnimation` に対する通知 シグナルです。

currentAnimation()も参照してください 。

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

QAbstractAnimation::duration() const を再実装します。

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

QAnimationGroup::event(QEvent *event) を再実装します。

QPauseAnimation *QSequentialAnimationGroup::insertPause(int index, int msecs)

このアニメーショングループの「index 」の位置に、msecs ミリ秒のポーズを挿入します。

addPause() およびQAnimationGroup::insertAnimation()も参照してください 。

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

QAbstractAnimation::updateCurrentTime(int currentTime) の再実装です。

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

QAbstractAnimation::updateDirection (QAbstractAnimation::Direction direction)を再実装しています。

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

QAbstractAnimation::updateState (QAbstractAnimation::State newState, QAbstractAnimation::State oldState)を再実装します。

© 2026 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.