Класс QSequentialAnimationGroup
Класс QSequentialAnimationGroup предоставляет последовательную группу анимаций. Подробнее...
| Заголовок: | #include <QSequentialAnimationGroup> |
| CMake: | find_package(Qt6 COMPONENTS Core REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Core) |
| qmake: | QT += core |
| Наследует: | QAnimationGroup |
Свойства
- currentAnimation : QAbstractAnimation* const
Открытые функции
| QSequentialAnimationGroup(QObject *parent = nullptr) | |
| virtual | ~QSequentialAnimationGroup() |
| QPauseAnimation * | addPause(int msecs) |
| 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()). Группа анимаций завершается, когда завершается последняя анимация.
В каждый момент времени в группе активна не более одной анимации; она возвращается свойством currentAnimation(). В пустой группе нет текущей анимации.
Последовательную группу анимаций можно рассматривать как любую другую анимацию, то есть ее можно запускать, останавливать и добавлять в другие группы. Также можно вызывать addPause() или insertPause(), чтобы добавить паузу в последовательную группу анимаций.
QSequentialAnimationGroup *group = new QSequentialAnimationGroup;
group->addAnimation(anim1);
group->addAnimation(anim2);
group->start(); В этом примере anim1 и anim2 — это две уже настроенные QPropertyAnimation.
См. также QAnimationGroup, QAbstractAnimation и Фреймворк анимации.
Документация по свойствам
[read-only] currentAnimation : QAbstractAnimation* const
Это свойство содержит анимацию в текущее время.
Функции доступа:
| QAbstractAnimation * | currentAnimation() const |
Сигнал уведомления:
| void | currentAnimationChanged(QAbstractAnimation *current) |
Документация по членам-функциям
QSequentialAnimationGroup::QSequentialAnimationGroup(QObject *parent = nullptr)
Создает QSequentialAnimationGroup. parent передается конструктору QObject.
[signal] void QSequentialAnimationGroup::currentAnimationChanged(QAbstractAnimation *current)
QSequentialAnimationGroup посылает этот сигнал, когда свойство currentAnimation было изменено. current — это текущая анимация.
Примечание: Сигнал уведомления для свойства currentAnimation.
См. также currentAnimation().
[virtual] QSequentialAnimationGroup::~QSequentialAnimationGroup()
Уничтожает группу анимаций. Также уничтожит все ее анимации.
QPauseAnimation *QSequentialAnimationGroup::addPause(int msecs)
Добавляет паузу продолжительностью msecs в эту группу анимаций. Пауза рассматривается как специальный тип анимации, поэтому animationCount увеличится на единицу.
См. также insertPause() и QAnimationGroup::addAnimation().
[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)
Вставляет паузу продолжительностью msecs миллисекунд на позиции index в этой группе анимаций.
См. также 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).
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.0/qsequentialanimationgroup.html