Spec-Zone.ru › Qt 5.15

Класс QAnimationGroup

Класс QAnimationGroup является абстрактным базовым классом для групп анимаций. Подробнее...

Заголовок: #include <QAnimationGroup>
qmake: QT += core
С версии: Qt 4.6
Наследует: QAbstractAnimation
Наследуется от:

QParallelAnimationGroup и QSequentialAnimationGroup

Этот класс был представлен в Qt 4.6.

  • Список всех членов, включая наследуемые члены

Открытые функции

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). Как правило, группа отвечает за управление состоянием своих анимаций, т. е. она определяет, когда их нужно запускать, останавливать, возобновлять и приостанавливать. В настоящее время Qt предоставляет две такие группы: QParallelAnimationGroup и QSequentialAnimationGroup. Подробную информацию см. в описаниях их классов.

Поскольку QAnimationGroup наследуется от QAbstractAnimation, вы можете комбинировать группы и легко создавать сложные графики анимации. Вы можете запросить у QAbstractAnimation группу, к которой она принадлежит (используя функцию group()).

Чтобы запустить группу анимаций верхнего уровня, просто используйте функцию start() из QAbstractAnimation. Под группой анимаций верхнего уровня мы подразумеваем группу, которая сама не содержится в другой группе. Прямое начало дочерних групп не поддерживается и может привести к неожиданному поведению.

QAnimationGroup предоставляет методы для добавления и извлечения анимаций. Кроме того, вы можете удалить анимации, вызвав removeAnimation(), и очистить группу анимаций, вызвав clear(). Вы можете отслеживать изменения в анимациях группы, прослушивая события QEvent::ChildAdded и QEvent::ChildRemoved.

QAnimationGroup принимает на себя управление анимациями, которые он управляет, и гарантирует, что они будут удалены при удалении группы анимаций.

См. также QAbstractAnimation, QVariantAnimation и Фреймворк анимации.

Документация по членам функций

QAnimationGroup::QAnimationGroup(QObject *parent = nullptr)

Создаёт QAnimationGroup. parent передаётся конструктору QObject.

[virtual] QAnimationGroup::~QAnimationGroup()

Удаляет группу анимаций. Также будут удалены все её анимации.

void QAnimationGroup::addAnimation(QAbstractAnimation *animation)

Добавляет animation в эту группу. Это вызовет insertAnimation с индексом, равным animationCount().

Примечание: Группа берёт на себя управление анимацией.

См. также 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().

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qanimationgroup.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API