Spec-Zone.ru › Qt 5.12

Класс 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 = nullptr)
QPropertyAnimation(QObject *target, const QByteArray &propertyName, QObject *parent = nullptr)
virtual ~QPropertyAnimation()
QByteArray propertyName() const
void setPropertyName(const QByteArray &propertyName)
void setTargetObject(QObject *target)
QObject * targetObject() const
  • 13 открытых функций унаследовано от QVariantAnimation
  • 11 открытых функций унаследовано от QAbstractAnimation
  • 32 открытых функции унаследовано от QObject

Статические открытые члены

const QMetaObject staticMetaObject
  • 10 статических открытых членов унаследовано от QObject

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

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

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

  • 6 публичных слотов унаследовано от QAbstractAnimation
  • 1 публичный слот унаследовано от QObject
  • 1 сигнал унаследовано от QVariantAnimation
  • 4 сигнала унаследовано от QAbstractAnimation
  • 2 сигнала унаследовано от 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 = nullptr)

Конструирует объект QPropertyAnimation. parent передаётся в конструктор QObject.

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

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

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

[virtual] QPropertyAnimation::~QPropertyAnimation()

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

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

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

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

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

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

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

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

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

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

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

Spec-Zone.ru

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