Auf dieser Seite

XAnimator QML Type

Der Typ „XAnimator“ animiert die x-Position eines Elements. Mehr...

Import Statement: import QtQuick
Inherits:

Animator

Ausführliche Beschreibung

Animator Typen unterscheiden sich von normalen Animationstypen. Bei Verwendung eines Animators kann die Animation im Render-Thread ausgeführt werden, und der Eigenschaftswert springt nach Abschluss der Animation ans Ende.

Der Wert von „ Item::x “ wird aktualisiert, nachdem die Animation beendet ist.

Der folgende Codeausschnitt zeigt, wie ein XAnimator zusammen mit einem Rectangle-Element verwendet wird.

Rectangle {
    id: xmovingBox
    width: 50
    height: 50
    color: "lightsteelblue"
    XAnimator {
        target: xmovingBox;
        from: 10;
        to: 0;
        duration: 1000
        running: true
    }
}

Es ist auch möglich, das Schlüsselwort „ on “ zu verwenden, um den XAnimator direkt an eine Item-Instanz zu binden.

Rectangle {
    width: 50
    height: 50
    color: "lightsteelblue"
    XAnimator on x {
        from: 10;
        to: 0;
        duration: 1000
    }
}

Hinweis: Animator -Typen bieten keinen Vorteil, wenn eine nicht-threadbasierte Render-Schleife verwendet wird.

Hinweis: Es wird empfohlen, bei der Entwicklung von Anwendungen auf Multithreading und asynchrone Prinzipien zu setzen, anstatt sich auf Animatoren zu verlassen, um animierte Inhalte anzuzeigen, während rechenintensive, blockierende Aufgaben im Haupt- (GUI-)Thread ausgeführt werden. Anstelle langer, blockierender Operationen sollten Sie in QML lieber „ WorkerScript “ und „ asynchronous image loading “ sowie in C++ Worker-Threads, parallele Algorithmen Qt Concurrentsowie Coroutinen in C++ zu bevorzugen, um so die Reaktionsfähigkeit der gesamten Anwendung und der Benutzeroberfläche jederzeit aufrechtzuerhalten.

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