QAnimationGroup Class
QAnimationGroupクラスは、アニメーショングループの抽象基底クラスです。詳細...
Header: | #include <QAnimationGroup> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Core) target_link_libraries(mytarget PRIVATE Qt6::Core) |
qmake: | QT += core |
Inherits: | QAbstractAnimation |
Inherited By: |
- 継承メンバを含む全メンバ一覧
- QAnimationGroupはAnimation Frameworkの一部です。
パブリック関数
QAnimationGroup(QObject *parent = nullptr) | |
virtual | ~QAnimationGroup() |
void | addAnimation(QAbstractAnimation *animation) |
QAbstractAnimation * | animationAt(int index) const |
int | animationCount() const |
void | clear() |
int | indexOfAnimation(QAbstractAnimation *animation) const |
void | insertAnimation(int index, QAbstractAnimation *animation) |
void | removeAnimation(QAbstractAnimation *animation) |
QAbstractAnimation * | takeAnimation(int index) |
再実装された保護された関数
virtual bool | event(QEvent *event) override |
詳細説明
アニメーショングループは、アニメーション(QAbstractAnimation のサブクラス)のコンテナです。グループは通常、そのアニメーションのstate を管理する責任があります。つまり、アニメーションを開始、停止、再開、一時停止するタイミングを決定します。現在、Qt はQParallelAnimationGroup とQSequentialAnimationGroup の2つのグループを提供しています。詳細はそれぞれのクラスの説明を参照してください。
QAnimationGroup はQAbstractAnimation を継承しているので、グループを組み合わせることができ、複雑なアニメーション・グラフを簡単に構築できます。group() 関数を使って)QAbstractAnimation に属するグループを問い合わせることができます。
トップレベルのアニメーショングループを開始するには、QAbstractAnimation のstart() 関数を使用します。トップレベルのアニメーショングループとは、それ自体が他のグループに含まれないグループのことです。サブグループを直接開始することはサポートされておらず、予期しない動作につながる可能性があります。
QAnimationGroupは、アニメーションの追加と取得のためのメソッドを提供します。それ以外にも、removeAnimation()を呼び出すことでアニメーションを削除し、clear()を呼び出すことでアニメーショングループをクリアすることができます。QEvent::ChildAdded とQEvent::ChildRemoved イベントをリッスンすることで、グループのアニメーションの変更を追跡することができます。
QAnimationGroupは、管理するアニメーションの所有権を持ち、アニメーショングループが削除されたときに、それらのアニメーションが削除されるようにします。
QAbstractAnimation,QVariantAnimation,The Animation Frameworkも参照してください 。
メンバ関数の説明
QAnimationGroup::QAnimationGroup(QObject *parent = nullptr)
QAnimationGroup を構築します。parent はQObject のコンストラクタに渡されます。
[virtual noexcept]
QAnimationGroup::~QAnimationGroup()
アニメーショングループを破棄します。また、そのすべてのアニメーションを破棄します。
void QAnimationGroup::addAnimation(QAbstractAnimation *animation)
このグループにanimation を追加します。これはanimationCount() と等しいインデックスでinsertAnimation を呼び出します。
注意: このグループはアニメーションの所有権を持ちます。
removeAnimation()も参照してください 。
QAbstractAnimation *QAnimationGroup::animationAt(int index) const
このグループのindex にあるアニメーションへのポインタを返します。この関数は、特定のアニメーションにアクセスする必要がある場合に便利です。index は 0 からanimationCount() - 1 の間です。
animationCount() およびindexOfAnimation()も参照 。
int QAnimationGroup::animationCount() const
このグループで管理されているアニメーションの数を返します。
indexOfAnimation()、addAnimation() およびanimationAt() も参照 。
void QAnimationGroup::clear()
このアニメーショングループ内のすべてのアニメーションを削除し、 現在時刻を 0 にリセットします。
addAnimation() およびremoveAnimation()も参照して ください。
[override virtual protected]
bool QAnimationGroup::event(QEvent *event)
再実装:QAbstractAnimation::event(QEvent *event)。
int QAnimationGroup::indexOfAnimation(QAbstractAnimation *animation) const
animation のインデックスを返します。返されたインデックスは、インデックスを引数に取る他の関数に渡すことができます。
insertAnimation()、animationAt()、takeAnimation()も参照してください 。
void QAnimationGroup::insertAnimation(int index, QAbstractAnimation *animation)
animation を、このアニメーショングループのindex に挿入する。index が 0 の場合、アニメーションは先頭に挿入されます。index がanimationCount() の場合、アニメーションは最後に挿入される。
注意: このグループはアニメーションの所有権を持ちます。
takeAnimation()、addAnimation()、indexOfAnimation()、removeAnimation()も参照してください 。
void QAnimationGroup::removeAnimation(QAbstractAnimation *animation)
このグループからanimation を削除します。animation の所有権は呼び出し元に移ります。
takeAnimation()、insertAnimation()、およびaddAnimation()も参照して ください。
QAbstractAnimation *QAnimationGroup::takeAnimation(int index)
index のアニメーションを返し、アニメーション・グループから削除します。
注意: アニメーションの所有権は呼び出し元に移ります。
removeAnimation()、addAnimation()、insertAnimation()、indexOfAnimation()も参照してください 。
©2024 The Qt Company Ltd. 本書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。