Класс QAnimationGroup
Класс QAnimationGroup — это абстрактный базовый класс для групп анимаций. Подробнее...
| Заголовок: | #include <QAnimationGroup> |
| qmake: | QT += core |
| С версии: | Qt 4.6 |
| Наследует: | QAbstractAnimation |
| Наследуется от: |
Открытые функции
| 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) |
- 11 открытых функций, унаследованных от QAbstractAnimation
- 32 открытых функций, унаследованных от QObject
Переопределённые защищённые функции
| virtual bool | event(QEvent *event) override |
- 4 защищённых функции, унаследованные от QAbstractAnimation
- 9 защищённых функций, унаследованных от QObject
Дополнительные унаследованные члены
- 6 свойств, унаследованных от QAbstractAnimation
- 1 свойства, унаследованного от QObject
- 6 открытых слотов, унаследованных от QAbstractAnimation
- 1 открытый слот, унаследованный от QObject
- 4 сигналов, унаследованных от QAbstractAnimation
- 2 сигналов, унаследованных от QObject
- 11 статических открытых членов, унаследованных от QObject
- 4 защищённых функции, унаследованные от QAbstractAnimation
- 9 защищённых функций, унаследованных от QObject
Подробное описание
Класс QAnimationGroup — это абстрактный базовый класс для групп анимаций.
Группа анимаций — это контейнер для анимаций (подклассы 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().
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/archives/qt-5.11/qanimationgroup.html