Sur cette page

OpacityAnimator QML Type

Le type OpacityAnimator anime l'opacité d'un élément. Plus d'informations...

Import Statement: import QtQuick
Inherits:

Animator

Description détaillée

Animator Les types Animator sont différents des types d'animation normaux. Lors de l'utilisation d'un Animator, l'animation peut être exécutée dans le fil de rendu et la valeur de la propriété sautera à la fin lorsque l'animation sera terminée.

La valeur de Item::opacity est mise à jour une fois l'animation terminée.

L'extrait suivant montre comment utiliser un OpacityAnimator avec un élément Rectangle.

Rectangle {
    id: opacityBox
    width: 50
    height: 50
    color: "lightsteelblue"
    OpacityAnimator {
        target: opacityBox;
        from: 0;
        to: 1;
        duration: 1000
        running: true
    }
}

Il est également possible d'utiliser le mot-clé on pour lier l'OpacityAnimator directement à une instance d'élément.

Rectangle {
    width: 50
    height: 50
    color: "lightsteelblue"
    OpacityAnimator on opacity{
        from: 0;
        to: 1;
        duration: 1000
    }
}

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

Remarque : 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 utilisateur de rester réactive en permanence.

© 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.