Table des matières

QPropertyAnimation

La classe QPropertyAnimation anime les propriétés Qt. Plus d'informations...

#include <QPropertyAnimation>

Héritage

Hérite de QVariantAnimation.

Description détaillée

La classe QPropertyAnimation anime les propriétés Qt.

QPropertyAnimation interpole les propriétés Qt. Comme les valeurs de propriétés sont stockées dans des QVariant, la classe hérite de QVariantAnimation et supporte une animation du même type variant que sa classe supérieure.

Une classe déclarant des propriétés doit être un QObject. Pour rendre possible l’animation de propriétés, elle doit fournir un modificateur (ainsi la QPropertyAnimation peut modifier la valeur de la propriété). Notez que cela permet d’animer de nombreux widgets Qt. Regardons un exemple :

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();

Le nom de la propriété et l’instance de QObject de la propriété à animer sont passés au constructeur. Vous pouvez ensuite spécifier la valeur de début et de fin de la propriété. La procédure est la même pour les propriétés dans des classes que vous avez implémentées vous-même. Vérifiez juste avec QVariantAnimation que votre type QVariant est supporté.

La description de la classe QVariantAnimation explique comment paramétrer l’animation en détail. Notez toutefois que si une valeur de départ n’est pas paramétrée, la propriété commencera à la valeur qu’elle avait quand l’instance de QPropertyAnimation a été créée.

QPropertyAnimation fonctionne tout seul comme par magie. Pour des animations complexes qui, par exemple, contiennent de nombreux objets, QAnimationGroup est prévu. Un groupe d’animations est une animation qui peut contenir d’autres animations et qui peut gérer quand ces animations sont jouées. Regardez dans QParallelAnimationGroup pour avoir un exemple.

Voir aussi QVariantAnimation, QAnimationGroup et Le framework animation.

Propriétés

propertyName

propertyName : QByteArray

Cette propriété contient et définit le nom de la propriété cible pour cette animation.

Le nom de la propriété est nécessaire pour que l’animation puisse opérer.

Fonctions d'accès

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

targetObject

targetObject : QObject *

Cette propriété contient et définit le QObject cible pour cette animation.

Fonctions d'accès

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

Fonctions membres

QPropertyAnimation()

QPropertyAnimation::QPropertyAnimation ( QObject * parent = 0 )

Construit un objet QPropertyAnimation. parent est passé au constructeur de QObject.

QPropertyAnimation()

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

Construit un objet QPropertyAnimation. parent est passé au constructeur de QObject. L’animation change la propriété propertyName sur l’objet target. La durée par défaut est de 250 ms.

Voir aussi targetObject et propertyName.

~QPropertyAnimation()

QPropertyAnimation::~QPropertyAnimation ()

Détruit l’instance de QPropertyAnimation.

event()

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

Réimplémentation de QObject::event().

updateCurrentValue()

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

Réimplémentation de QVariantAnimation::updateCurrentValue().

Cette fonction virtuelle est appelée par QVariantAnimation quand la valeur courante change. value est la nouvelle valeur mise à jour. Elle met à jour la valeur courante de la propriété de l’objet cible.

Voir aussi currentValue et currentTime.

updateState()

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

Réimplémentation de QAbstractAnimation::updateState().

Si la valeur startValue n’est pas définie lorsque l’état de l’animation change de Stopped à Running, la valeur courante de la propriété est utilisée comme valeur initiale de l’animation.

Remerciements

Merci à <!johnlamericain!> pour la traduction et à <!dourouc!> ainsi qu’à <!jacques_jean!> pour leur relecture !