Sur cette page

Animator QML Type

C'est la base de tous les animateurs QML. Plus d'informations...

Import Statement: import QtQuick
Inherits:

Animation

Inherited By:

OpacityAnimator, RotationAnimator, ScaleAnimator, UniformAnimator, XAnimator, and YAnimator

Propriétés

Description détaillée

Les types Animator sont un type spécial d'animation qui opère directement sur le graphe de scène de Qt Quick, plutôt que sur les objets QML et leurs propriétés comme le font les types Animation ordinaires. L'avantage est que les animations basées sur les Animateurs peuvent être animées sur le thread de rendu du graphe de scène, même lorsque le thread de l'interface utilisateur est bloqué.

La valeur de la propriété QML sera mise à jour une fois l'animation terminée. La propriété n'est pas mise à jour lorsque l'animation est en cours.

Les types Animator peuvent être utilisés comme n'importe quel autre type d'animation.

Rectangle {
    id: mixBox
    width: 50
    height: 50
    ParallelAnimation {
        ColorAnimation {
            target: mixBox
            property: "color"
            from: "forestgreen"
            to: "lightsteelblue";
            duration: 1000
        }
        ScaleAnimator {
            target: mixBox
            from: 2
            to: 1
            duration: 1000
        }
        running: true
    }
}

Si toutes les sous-animations de ParallelAnimation et SequentialAnimation sont de type Animator, les animations ParallelAnimation et SequentialAnimation seront également traitées comme des Animators et seront exécutées sur le thread de rendu du graphe de scène lorsque cela est possible.

Les types Animator peuvent être utilisés pour les animations pendant les transitions, mais ils ne prennent pas en charge la propriété reversible.

Le type Animator ne peut pas être utilisé directement dans un fichier QML. Il existe pour fournir un ensemble de propriétés et de méthodes communes, disponibles pour tous les autres types d'animateurs qui en héritent. Toute tentative d'utilisation directe du type Animator entraînera une erreur.

Remarque : les types d'animateurs ne présentent aucun avantage lorsqu'une boucle de rendu non threadée est utilisée.

Note : Il est recommandé aux applications d'envisager des conceptions basées sur des principes asynchrones et multithreads, plutôt que de s'appuyer sur les animateurs pour afficher un contenu animé tout en effectuant un travail coûteux et bloquant sur le thread principal (GUI). Au lieu d'opérations longues et bloquantes, préférez l'utilisation de WorkerScript et asynchronous image loading en QML, ainsi que des threads de travail, des algorithmes parallèles et des coroutines en C++, Qt Concurrentet des coroutines en C++, ce qui permet à l'ensemble de l'application et de l'interface graphique de rester réactive en permanence.

Documentation sur les propriétés

duration : int

Cette propriété indique la durée de l'animation en millisecondes.

La valeur par défaut est 250.

easing group

easing.amplitude : real

easing.bezierCurve : list<real>

easing.overshoot : real

easing.period : real

easing.type : enumeration

Spécifie la courbe d'assouplissement utilisée pour l'animation

Pour spécifier une courbe d'assouplissement, vous devez au moins spécifier le type. Pour certaines courbes, vous pouvez également spécifier l'amplitude, la période et/ou le dépassement (plus de détails sont fournis après le tableau). La courbe d'assouplissement par défaut est Easing.Linear.

PropertyAnimation { properties: "y";
                    easing.type: Easing.InOutElastic;
                    easing.amplitude: 2.0;
                    easing.period: 1.5 }

Les types disponibles sont les suivants :

Easing.LinearCourbe d'assouplissement pour une fonction linéaire (t) : la vitesse est constante.Courbe d'assouplissement linéaire
Easing.InQuadCourbe d'assouplissement pour une fonction quadratique (t^2) : accélération à partir d'une vitesse nulle.Courbe d'assouplissement InQuad
Easing.OutQuadCourbe d'assouplissement pour une fonction quadratique (t^2) : décélération jusqu'à une vitesse nulle.Courbe d'assouplissement OutQuad
Easing.InOutQuadCourbe d'assouplissement d'une fonction quadratique (t^2) : accélération jusqu'à la moitié, puis décélération.Courbe d'assouplissement InOutQuad
Easing.OutInQuadCourbe d'assouplissement d'une fonction quadratique (t^2) : décélération jusqu'à la moitié, puis accélération.Courbe d'assouplissement OutInQuad
Easing.InCubicCourbe d'assouplissement d'une fonction cubique (t^3) : accélération à partir d'une vitesse nulle.Courbe de détente InCubic
Easing.OutCubicCourbe d'assouplissement d'une fonction cubique (t^3) : décélération jusqu'à une vitesse nulle.Courbe de détente OutCubic
Easing.InOutCubicCourbe d'assouplissement d'une fonction cubique (t^3) : accélération jusqu'à la moitié, puis décélération.Courbe de détente InOutCubic
Easing.OutInCubicCourbe d'assouplissement d'une fonction cubique (t^3) : décélération jusqu'à la moitié, puis accélération.Courbe de détente OutInCubic
Easing.InQuartCourbe d'assouplissement d'une fonction quartique (t^4) : accélération à partir d'une vitesse nulle.Courbe d'assouplissement InQuart
Easing.OutQuartCourbe d'assouplissement d'une fonction quartique (t^4) : décélération jusqu'à une vitesse nulle.Courbe d'assouplissement OutQuart
Easing.InOutQuartCourbe d'assouplissement d'une fonction quartique (t^4) : accélération jusqu'à la moitié, puis décélération.Courbe d'assouplissement InOutQuart
Easing.OutInQuartCourbe d'assouplissement d'une fonction quartique (t^4) : décélération jusqu'à la moitié, puis accélération.Courbe de détente OutInQuart
Easing.InQuintCourbe d'assouplissement d'une fonction quintique (t^5) : accélération à partir d'une vitesse nulle.Courbe d'assouplissement InQuint
Easing.OutQuintCourbe d'assouplissement d'une fonction quintique (t^5) : décélération jusqu'à une vitesse nulle.Courbe d'assouplissement OutQuint
Easing.InOutQuintCourbe d'assouplissement d'une fonction quintique (t^5) : accélération jusqu'à la moitié, puis décélération.Courbe d'assouplissement InOutQuint
Easing.OutInQuintCourbe d'assouplissement d'une fonction quintique (t^5) : décélération jusqu'à la moitié, puis accélération.Courbe d'assouplissement OutInQuint
Easing.InSineCourbe d'assouplissement d'une fonction sinusoïdale (sin(t)) : accélération à partir d'une vitesse nulle.Courbe de détente InSine
Easing.OutSineCourbe d'assouplissement d'une fonction sinusoïdale (sin(t)) : décélération jusqu'à une vitesse nulle.Courbe de détente OutSine
Easing.InOutSineCourbe d'assouplissement d'une fonction sinusoïdale (sin(t)) : accélération jusqu'à la moitié, puis décélération.Courbe de détente InOutSine
Easing.OutInSineCourbe d'assouplissement d'une fonction sinusoïdale (sin(t)) : décélération jusqu'à la moitié, puis accélération.Courbe de détente OutInSine
Easing.InExpoCourbe d'assouplissement d'une fonction exponentielle (2^t) : accélération à partir d'une vitesse nulle.Courbe d'assouplissement de l'InExpo
Easing.OutExpoCourbe d'assouplissement d'une fonction exponentielle (2^t) : décélération jusqu'à une vitesse nulle.Courbe d'assouplissement de l'OutExpo
Easing.InOutExpoCourbe d'assouplissement d'une fonction exponentielle (2^t) : accélération jusqu'à la moitié, puis décélération.Courbe de détente InOutExpo
Easing.OutInExpoCourbe d'assouplissement d'une fonction exponentielle (2^t) : décélération jusqu'à la moitié, puis accélération.Courbe de détente OutInExpo
Easing.InCircCourbe d'assouplissement d'une fonction circulaire (sqrt(1-t^2)) : accélération à partir d'une vitesse nulle.Courbe de détente InCirc
Easing.OutCircCourbe d'assouplissement d'une fonction circulaire (sqrt(1-t^2)) : décélération jusqu'à une vitesse nulle.Courbe d'assouplissement OutCirc
Easing.InOutCircCourbe d'assouplissement pour une fonction circulaire (sqrt(1-t^2)) : accélération jusqu'à la moitié, puis décélération.InOutCirc courbe d'assouplissement
Easing.OutInCircCourbe d'assouplissement d'une fonction circulaire (sqrt(1-t^2)) : décélération jusqu'à la moitié, puis accélération.Courbe de détente OutInCirc
Easing.InElasticCourbe d'assouplissement pour une fonction élastique (onde sinusoïdale à décroissance exponentielle) : accélération à partir d'une vitesse nulle.
L'amplitude du pic peut être définie à l'aide du paramètre amplitude, et la période de décroissance à l'aide du paramètre période.
InCourbe d'assouplissement
Easing.OutElasticCourbe d'assouplissement pour une fonction élastique (onde sinusoïdale à décroissance exponentielle) : décélération jusqu'à une vitesse nulle.
L'amplitude du pic peut être définie à l'aide du paramètre amplitude, et la période de décroissance à l'aide du paramètre période.
Courbe d'assouplissement non élastique
Easing.InOutElasticCourbe d'assouplissement pour une fonction élastique (onde sinusoïdale à décroissance exponentielle) : accélération jusqu'à la moitié, puis décélération.InOutElastic easing curve (courbe d'assouplissement)
Easing.OutInElasticCourbe d'assouplissement d'une fonction élastique (sinusoïdale à décroissance exponentielle) : décélération jusqu'à la moitié, puis accélération.OutInCourbe d'assouplissement élastique
Easing.InBackCourbe d'assouplissement pour un dos (fonction cubique à dépassement : (s+1)*t^3 - s*t^2) assouplissement : accélération à partir d'une vitesse nulle.Courbe d'assouplissement InBack
Easing.OutBackCourbe d'assouplissement pour un dos (fonction cubique de dépassement : (s+1)*t^3 - s*t^2) assouplissement : décélération jusqu'à une vitesse nulle.Courbe d'assouplissement OutBack
Easing.InOutBackCourbe d'assouplissement pour un dos (fonction cubique de dépassement : (s+1)*t^3 - s*t^2) easing in/out : accélération jusqu'à la moitié, puis décélération.Courbe d'assouplissement InOutBack
Easing.OutInBackCourbe d'assouplissement pour un retour (fonction cubique d'assouplissement : (s+1)*t^3 - s*t^2) assouplissement vers l'extérieur/extérieur : décélération jusqu'à la moitié, puis accélération.Courbe d'assouplissement OutInBack
Easing.InBounceCourbe d'assouplissement pour un rebond (rebond parabolique à décroissance exponentielle) fonction : accélération à partir d'une vitesse nulle.InBounce courbe d'assouplissement
Easing.OutBounceCourbe d'assouplissement d'un rebond (rebond parabolique à décroissance exponentielle) fonction : décélération jusqu'à une vitesse nulle.Courbe d'assouplissement OutBounce
Easing.InOutBounceCourbe d'assouplissement d'un rebond (rebond parabolique à décroissance exponentielle) fonction d'assouplissement : accélération jusqu'à la moitié, puis décélération.InOutBounce courbe d'assouplissement
Easing.OutInBounceCourbe d'assouplissement pour une fonction de rebond (rebond parabolique à décroissance exponentielle) easing out/in : décélération jusqu'à la moitié, puis accélération.OutInBounce courbe d'assouplissement
Easing.BezierSplineCourbe d'assouplissement personnalisée définie par la propriété easing.bezierCurve.

easing.amplitude ne s'applique qu'aux courbes de rebond et aux courbes élastiques (courbes de type Easing.InBounce, Easing.OutBounce, Easing.InOutBounce, Easing.OutInBounce, Easing.InElastic, Easing.OutElastic, Easing.InOutElastic ou Easing.OutInElastic).

easing.overshoot n'est applicable que si easing.type est : Easing.InBack, Easing.OutBack, Easing.InOutBack ou Easing.OutInBack.

easing.period n'est applicable que si easing.type est : , , ou : Easing.InElastic, Easing.OutElastic, Easing.InOutElastic ou Easing.OutInElastic.

easing.bezierCurve n'est applicable que si easing.type est : Easing.BezierSpline. Cette propriété est une liste<réel> contenant des groupes de trois points définissant une courbe de 0,0 à 1,1 - control1, control2, end point : [cx1, cy1, cx2, cy2, endx, endy, ...]. Le dernier point doit être 1,1.

Voir les courbes d'assouplissement pour une démonstration des différents paramètres d'assouplissement.

from : real

Cette propriété contient la valeur de départ de l'animation.

Si l'animateur est défini dans une Transition ou une Behavior, cette valeur prend par défaut la valeur définie dans l'état de départ de la Transition, ou la valeur actuelle de la propriété au moment où la Behavior est déclenchée.

Voir également Animation et transitions à l'adresse Qt Quick.

target : QtQuick::Item

Cette propriété contient l'élément cible de l'animateur.

Remarque : les cibles de l'animateur doivent être des types d'éléments.

to : real

Cette propriété contient la valeur finale de l'animation.

Si l'animateur est défini dans une Transition ou une Behavior, cette valeur prend par défaut la valeur définie dans l'état final de la Transition, ou la valeur du changement de propriété qui a déclenché la Behavior.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.