En esta página

QAnimationGroup Class

La clase QAnimationGroup es una clase base abstracta para grupos de animaciones. Más...

Cabecera: #include <QAnimationGroup>
CMake: find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake: QT += core
Hereda: QAbstractAnimation
Heredado por:

QParallelAnimationGroup y QSequentialAnimationGroup

Funciones Públicas

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)

Funciones Protegidas Reimplementadas

virtual bool event(QEvent *event) override

Descripción Detallada

Un grupo de animación es un contenedor de animaciones (subclases de QAbstractAnimation). Un grupo es normalmente responsable de gestionar la state de sus animaciones, es decir, decide cuando iniciarlas, pararlas, reanudarlas y pausarlas. Actualmente, Qt proporciona dos de estos grupos: QParallelAnimationGroup y QSequentialAnimationGroup. Mira las descripciones de sus clases para más detalles.

Como QAnimationGroup hereda de QAbstractAnimation, puedes combinar grupos, y construir fácilmente complejos gráficos de animación. Puedes consultar QAbstractAnimation para saber a qué grupo pertenece (utilizando la función group()).

Para iniciar un grupo de animación de nivel superior, basta con utilizar la función start() de QAbstractAnimation. Por grupo de animación de nivel superior, entendemos un grupo que no está contenido en otro grupo. Iniciar subgrupos directamente no está soportado, y puede llevar a comportamientos inesperados.

QAnimationGroup provee métodos para agregar y recuperar animaciones. Además, puedes eliminar animaciones llamando a removeAnimation(), y borrar el grupo de animación llamando a clear(). Puedes estar al tanto de los cambios en las animaciones del grupo escuchando los eventos QEvent::ChildAdded y QEvent::ChildRemoved.

QAnimationGroup toma posesión de las animaciones que maneja, y se asegura de que sean borradas cuando el grupo de animación es borrado.

Ver también QAbstractAnimation, QVariantAnimation, y The Animation Framework.

Documentación de Funciones Miembro

QAnimationGroup::QAnimationGroup(QObject *parent = nullptr)

Construye un QAnimationGroup. parent es pasado al constructor de QObject.

[virtual noexcept] QAnimationGroup::~QAnimationGroup()

Destruye el grupo de animación. También destruirá todas sus animaciones.

void QAnimationGroup::addAnimation(QAbstractAnimation *animation)

Añade animation a este grupo. Esto llamará a insertAnimation con índice igual a animationCount().

Nota: El grupo toma posesión de la animación.

Ver también removeAnimation().

QAbstractAnimation *QAnimationGroup::animationAt(int index) const

Devuelve un puntero a la animación en index en este grupo. Esta función es útil cuando necesitas acceder a una animación en particular. index está entre 0 y animationCount() - 1.

Ver también animationCount() y indexOfAnimation().

int QAnimationGroup::animationCount() const

Devuelve el número de animaciones gestionadas por este grupo.

Véase también indexOfAnimation(), addAnimation() y animationAt().

void QAnimationGroup::clear()

Remueve y borra todas las animaciones en este grupo de animación, y reinicia el tiempo actual a 0.

Véase también addAnimation() y removeAnimation().

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

Reimplementa: QAbstractAnimation::event(QEvent *event).

int QAnimationGroup::indexOfAnimation(QAbstractAnimation *animation) const

Devuelve el índice de animation. El índice devuelto puede pasarse a las demás funciones que toman un índice como argumento.

Véase también insertAnimation(), animationAt() y takeAnimation().

void QAnimationGroup::insertAnimation(int index, QAbstractAnimation *animation)

Inserta animation en este grupo de animación en index. Si index es 0, la animación se inserta al principio. Si index es animationCount(), la animación se inserta al final.

Nota: El grupo se apropia de la animación.

Ver también takeAnimation(), addAnimation(), indexOfAnimation(), y removeAnimation().

void QAnimationGroup::removeAnimation(QAbstractAnimation *animation)

Elimina animation de este grupo. La propiedad de animation se transfiere al llamante.

Véase también takeAnimation(), insertAnimation() y addAnimation().

QAbstractAnimation *QAnimationGroup::takeAnimation(int index)

Devuelve la animación a index y la elimina del grupo de animación.

Nota: La propiedad de la animación se transfiere a quien la llama.

Ver también removeAnimation(), addAnimation(), insertAnimation(), y indexOfAnimation().

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