Animator QML Type
C'est la base de tous les animateurs QML. Plus d'informations...
| Import Statement: | import QtQuick |
| Inherits: | |
| Inherited By: | OpacityAnimator, RotationAnimator, ScaleAnimator, UniformAnimator, XAnimator, and YAnimator |
Propriétés
- duration : int
- easing
- easing.amplitude : real
- easing.bezierCurve : list<real>
- easing.overshoot : real
- easing.period : real
- easing.type : enumeration
- from : real
- target : QtQuick::Item
- to : real
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.Linear | Courbe d'assouplissement pour une fonction linéaire (t) : la vitesse est constante. | ![]() |
Easing.InQuad | Courbe d'assouplissement pour une fonction quadratique (t^2) : accélération à partir d'une vitesse nulle. | ![]() |
Easing.OutQuad | Courbe d'assouplissement pour une fonction quadratique (t^2) : décélération jusqu'à une vitesse nulle. | ![]() |
Easing.InOutQuad | Courbe d'assouplissement d'une fonction quadratique (t^2) : accélération jusqu'à la moitié, puis décélération. | ![]() |
Easing.OutInQuad | Courbe d'assouplissement d'une fonction quadratique (t^2) : décélération jusqu'à la moitié, puis accélération. | ![]() |
Easing.InCubic | Courbe d'assouplissement d'une fonction cubique (t^3) : accélération à partir d'une vitesse nulle. | ![]() |
Easing.OutCubic | Courbe d'assouplissement d'une fonction cubique (t^3) : décélération jusqu'à une vitesse nulle. | ![]() |
Easing.InOutCubic | Courbe d'assouplissement d'une fonction cubique (t^3) : accélération jusqu'à la moitié, puis décélération. | ![]() |
Easing.OutInCubic | Courbe d'assouplissement d'une fonction cubique (t^3) : décélération jusqu'à la moitié, puis accélération. | ![]() |
Easing.InQuart | Courbe d'assouplissement d'une fonction quartique (t^4) : accélération à partir d'une vitesse nulle. | ![]() |
Easing.OutQuart | Courbe d'assouplissement d'une fonction quartique (t^4) : décélération jusqu'à une vitesse nulle. | ![]() |
Easing.InOutQuart | Courbe d'assouplissement d'une fonction quartique (t^4) : accélération jusqu'à la moitié, puis décélération. | ![]() |
Easing.OutInQuart | Courbe d'assouplissement d'une fonction quartique (t^4) : décélération jusqu'à la moitié, puis accélération. | ![]() |
Easing.InQuint | Courbe d'assouplissement d'une fonction quintique (t^5) : accélération à partir d'une vitesse nulle. | ![]() |
Easing.OutQuint | Courbe d'assouplissement d'une fonction quintique (t^5) : décélération jusqu'à une vitesse nulle. | ![]() |
Easing.InOutQuint | Courbe d'assouplissement d'une fonction quintique (t^5) : accélération jusqu'à la moitié, puis décélération. | ![]() |
Easing.OutInQuint | Courbe d'assouplissement d'une fonction quintique (t^5) : décélération jusqu'à la moitié, puis accélération. | ![]() |
Easing.InSine | Courbe d'assouplissement d'une fonction sinusoïdale (sin(t)) : accélération à partir d'une vitesse nulle. | ![]() |
Easing.OutSine | Courbe d'assouplissement d'une fonction sinusoïdale (sin(t)) : décélération jusqu'à une vitesse nulle. | ![]() |
Easing.InOutSine | Courbe d'assouplissement d'une fonction sinusoïdale (sin(t)) : accélération jusqu'à la moitié, puis décélération. | ![]() |
Easing.OutInSine | Courbe d'assouplissement d'une fonction sinusoïdale (sin(t)) : décélération jusqu'à la moitié, puis accélération. | ![]() |
Easing.InExpo | Courbe d'assouplissement d'une fonction exponentielle (2^t) : accélération à partir d'une vitesse nulle. | ![]() |
Easing.OutExpo | Courbe d'assouplissement d'une fonction exponentielle (2^t) : décélération jusqu'à une vitesse nulle. | ![]() |
Easing.InOutExpo | Courbe d'assouplissement d'une fonction exponentielle (2^t) : accélération jusqu'à la moitié, puis décélération. | ![]() |
Easing.OutInExpo | Courbe d'assouplissement d'une fonction exponentielle (2^t) : décélération jusqu'à la moitié, puis accélération. | ![]() |
Easing.InCirc | Courbe d'assouplissement d'une fonction circulaire (sqrt(1-t^2)) : accélération à partir d'une vitesse nulle. | ![]() |
Easing.OutCirc | Courbe d'assouplissement d'une fonction circulaire (sqrt(1-t^2)) : décélération jusqu'à une vitesse nulle. | ![]() |
Easing.InOutCirc | Courbe d'assouplissement pour une fonction circulaire (sqrt(1-t^2)) : accélération jusqu'à la moitié, puis décélération. | ![]() |
Easing.OutInCirc | Courbe d'assouplissement d'une fonction circulaire (sqrt(1-t^2)) : décélération jusqu'à la moitié, puis accélération. | ![]() |
Easing.InElastic | Courbe 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. | ![]() |
Easing.OutElastic | Courbe 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. | ![]() |
Easing.InOutElastic | Courbe d'assouplissement pour une fonction élastique (onde sinusoïdale à décroissance exponentielle) : accélération jusqu'à la moitié, puis décélération. | ![]() |
Easing.OutInElastic | Courbe d'assouplissement d'une fonction élastique (sinusoïdale à décroissance exponentielle) : décélération jusqu'à la moitié, puis accélération. | ![]() |
Easing.InBack | Courbe 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. | ![]() |
Easing.OutBack | Courbe 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. | ![]() |
Easing.InOutBack | Courbe 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. | ![]() |
Easing.OutInBack | Courbe 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. | ![]() |
Easing.InBounce | Courbe d'assouplissement pour un rebond (rebond parabolique à décroissance exponentielle) fonction : accélération à partir d'une vitesse nulle. | ![]() |
Easing.OutBounce | Courbe d'assouplissement d'un rebond (rebond parabolique à décroissance exponentielle) fonction : décélération jusqu'à une vitesse nulle. | ![]() |
Easing.InOutBounce | Courbe d'assouplissement d'un rebond (rebond parabolique à décroissance exponentielle) fonction d'assouplissement : accélération jusqu'à la moitié, puis décélération. | ![]() |
Easing.OutInBounce | Courbe 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. | ![]() |
Easing.BezierSpline | Courbe 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.








































