Spec-Zone.ru › Qt 5.9

Класс QPropertyAnimation

Класс QPropertyAnimation анимирует свойства Qt Подробнее...

Заголовок: #include <QPropertyAnimation>
qmake: QT += core
С момента: Qt 4.6
Наследует: QVariantAnimation
  • Список всех членов, включая наследуемые

Свойства

  • propertyName : QByteArray
  • targetObject : QObject *
  • 5 свойств, унаследованных от QVariantAnimation
  • 6 свойств, унаследованных от QAbstractAnimation
  • 1 свойство, унаследованное от QObject

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

QPropertyAnimation(QObject *parent = Q_NULLPTR)
QPropertyAnimation(QObject *target, const QByteArray &propertyName, QObject *parent = Q_NULLPTR)
~QPropertyAnimation()
QByteArray propertyName() const
void setPropertyName(const QByteArray &propertyName)
void setTargetObject(QObject *target)
QObject * targetObject() const
  • 13 открытых функций, унаследованных от QVariantAnimation
  • 11 открытых функций, унаследованных от QAbstractAnimation
  • 32 открытых функций, унаследованных от QObject

Переопределённые защищённые функции

virtual bool event(QEvent *event)
virtual void updateCurrentValue(const QVariant &value)
virtual void updateState(QAbstractAnimation::State newState, QAbstractAnimation::State oldState)
  • 5 защищённых функций, унаследованных от QVariantAnimation
  • 4 защищённых функций, унаследованных от QAbstractAnimation
  • 9 защищённых функций, унаследованных от QObject

Дополнительные унаследованные члены

  • 6 открытых слотов, унаследованных от QAbstractAnimation
  • 1 открытый слот, унаследованный от QObject
  • 1 сигнал, унаследованный от QVariantAnimation
  • 4 сигнала, унаследованные от QAbstractAnimation
  • 2 сигнала, унаследованные от QObject
  • 11 статических открытых членов, унаследованных от QObject
  • 5 защищённых функций, унаследованных от QVariantAnimation
  • 4 защищённых функций, унаследованных от QAbstractAnimation
  • 9 защищённых функций, унаследованных от QObject

Подробное описание

Класс QPropertyAnimation анимирует свойства Qt

QPropertyAnimation интерполирует значения свойств Qt. Поскольку значения свойств хранятся в QVariant, этот класс наследует QVariantAnimation и поддерживает анимацию тех же метатипов, что и его базовый класс.

Класс, объявляющий свойства, должен быть QObject. Чтобы анимировать свойство, он должен предоставить метод-сеттер (чтобы QPropertyAnimation мог установить значение свойства). Это позволяет анимировать многие виджеты Qt. Посмотрим на пример:

QPropertyAnimation *animation = new QPropertyAnimation(myWidget, "geometry");
animation->setDuration(10000);
animation->setStartValue(QRect(0, 0, 100, 30));
animation->setEndValue(QRect(250, 250, 100, 30));

animation->start();

Имя свойства и экземпляр QObject, свойство которого должно быть анимировано, передаются в конструктор. Затем можно задать начальное и конечное значение свойства. Процедура аналогична для свойств в классах, которые вы реализовали сами — просто убедитесь с помощью QVariantAnimation, что ваш тип QVariant поддерживается.

Описание класса QVariantAnimation подробно объясняет, как настроить анимацию. Однако, если начальное значение не задано, свойство будет начинаться с значения, которое оно имело при создании экземпляра QPropertyAnimation.

QPropertyAnimation работает отлично самостоятельно. Для сложных анимаций, содержащих, например, несколько объектов, предоставляется QAnimationGroup. Группа анимаций — это анимация, которая может содержать другие анимации и управлять их воспроизведением. Смотрите пример использования QParallelAnimationGroup.

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

Документация по свойствам

propertyName : QByteArray

Это свойство содержит имя целевого свойства для этой анимации.

Это свойство определяет имя целевого свойства для этой анимации. Имя свойства необходимо для работы анимации.

Функции доступа:

QByteArray propertyName() const
void setPropertyName(const QByteArray &propertyName)

targetObject : QObject *

Это свойство содержит целевой объект QObject для этой анимации.

Это свойство определяет целевой QObject для этой анимации.

Функции доступа:

QObject * targetObject() const
void setTargetObject(QObject *target)

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

QPropertyAnimation::QPropertyAnimation(QObject *parent = Q_NULLPTR)

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

QPropertyAnimation::QPropertyAnimation(QObject *target, const QByteArray &propertyName, QObject *parent = Q_NULLPTR)

Создаёт объект QPropertyAnimation. parent передаётся конструктору QObject. Анимация изменяет свойство propertyName объекта target. Значение по умолчанию для продолжительности — 250 мс.

См. также targetObject и propertyName.

QPropertyAnimation::~QPropertyAnimation()

Удаляет экземпляр QPropertyAnimation.

[virtual protected] bool QPropertyAnimation::event(QEvent *event)

Переопределено из QObject::event().

[virtual protected] void QPropertyAnimation::updateCurrentValue(const QVariant &value)

Переопределено из QVariantAnimation::updateCurrentValue().

Эта виртуальная функция вызывается QVariantAnimation всякий раз, когда текущее значение изменяется. value — новое обновлённое значение. Оно обновляет текущее значение свойства в целевом объекте.

См. также currentValue и currentTime.

[virtual protected] void QPropertyAnimation::updateState(QAbstractAnimation::State newState, QAbstractAnimation::State oldState)

Переопределено из QAbstractAnimation::updateState().

Если начальное значение не определено, когда состояние анимации меняется со Stopped на Running, текущее значение свойства используется как начальное значение для анимации.

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

Spec-Zone.ru

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