Wichtige Konzepte in Qt Quick - Zustände, Übergänge und Animationen

In jeder modernen Benutzerschnittstelle sind Übergänge zwischen Zuständen und Animationen der Benutzerschnittstelle von großem Nutzen. Dies sind erstklassige Konzepte in Qt Quick.

Diese Seite beschreibt das Konzept von Zuständen, Zustandsübergängen und Eigenschaftsanimationen. Es wird erläutert, welche Konzepte wichtig sind und warum, und wie diese Konzepte zusammenhängen. Sie enthält auch Links zu detaillierten Informationen über die QML-Typen, die Qt Quick zur Implementierung dieser Konzepte bereitstellt.

Zustände

Der Zustand eines bestimmten visuellen Elements ist der Satz von Informationen, der beschreibt, wie und wo die einzelnen Komponenten des visuellen Elements angezeigt werden, sowie alle mit diesem Zustand verbundenen Daten. Die meisten visuellen Elemente in einer Benutzeroberfläche haben eine begrenzte Anzahl von Zuständen, die jeweils genau definierte Eigenschaften haben.

Beispielsweise kann ein Element in einer Liste entweder ausgewählt oder nicht ausgewählt sein, und wenn es ausgewählt ist, kann es entweder die derzeit aktive Einzelauswahl sein oder es kann Teil einer Auswahlgruppe sein.

Jeder dieser Zustände kann mit einem bestimmten visuellen Erscheinungsbild verbunden sein (neutral, hervorgehoben, erweitert usw.).

Qt Quick bietet einen State Typ mit Eigenschaften, die seine Semantik definieren und zum Auslösen von Verhalten oder Animationen verwendet werden können. Weitere Informationen finden Sie in der Dokumentation zu Qt Quick States.

Übergänge

Wenn ein visuelles Element von einem Zustand in einen anderen übergeht, ändert sich das Aussehen dieses Elements. Ein Übergang ist eine "Kante" zwischen zwei Zuständen. Er kann andere Ereignisse auslösen, da andere Teile der Anwendung ein Verhalten aufweisen können, das ausgelöst wird, wenn ein bestimmter Zustand betreten oder verlassen wird.

Qt Quick stellt den Typ Transition zur Verfügung, der Eigenschaften hat, die definieren, was passiert, wenn die Anwendung von einem Zustand in einen anderen wechselt. Weitere Informationen zu Übergängen finden Sie in der Dokumentation zu Übergängen bei Zustandsänderungen.

Animationen

Beim Übergang zwischen Zuständen kann eine flüssige Animation verwendet werden, um den Benutzer während des Übergangs zu unterstützen. Abrupte und unerwartete Änderungen des visuellen Canvas führen zu einer suboptimalen Benutzererfahrung und sollten vermieden werden.

Wenn ein Element in einer Liste ausgewählt wird, kann der Farbwechsel (von neutral zu hervorgehoben) animiert werden. Wird die Position des Elements in der Liste geändert, kann es fließend animiert verschoben werden, so dass das Auge des Benutzers die Änderung verfolgen kann.

Diese Arten von Animationen werden in Qt Quick durch verschiedene Animations- und Übergangstypen unterstützt. Informationen über diese Typen und ihre Verwendung finden Sie in der Dokumentation zu Animationen und Übergängen in Qt Quick.

Animierte Eigenschaftszuweisungen

Animationen sind nicht nur mit Zuständen und Übergängen zwischen Zuständen verbunden. Eine Animation kann zum Beispiel auch durch andere Ereignisse ausgelöst werden, die nicht mit einem bestimmten Zustand verbunden sind.

Es ist oft von Vorteil, Änderungen an bestimmten Eigenschaften von visuellen Elementen unabhängig von der Ursache der Änderung zu animieren (z. B. Deckkraft-Effekte). Qt Quick bietet den Typ Behavior, mit dem der Client das Animationsverhalten für Änderungen an Eigenschaften festlegen kann. Der Typ Behavior ist ein Beispiel für einen QML-Objekteigenschaftsmodifikator.

Weitere Informationen über die Verwendung des Typs Behavior zur Bereitstellung von Animationen für Standard-Eigenschaftsänderungen finden Sie in der Dokumentation über Standard-Eigenschaftsanimationen.

Es ist wichtig zu beachten, dass die Verwendung von Standard-Eigenschaftsanimationen (über den Typ Behavior ) in Kombination mit Zustandsübergangsanimationen manchmal zu undefiniertem Verhalten führen kann. Weitere Informationen zu diesem Thema finden Sie in der Dokumentation zur Verwendung von Qt Quick Behaviors with States.

Animatoren

Die Animator Typen sind eine spezielle Art von Animationen, die die QML-Objekte umgehen und direkt auf die Primitive im Szenegraph wirken. Dies hat den Vorteil, dass die Animator-basierten Animationen auf dem Rendering-Thread des Szenegraphen ausgeführt werden können (falls zutreffend) und auch dann weiter animiert werden können, wenn die Benutzeroberfläche ansonsten blockiert ist.

Qt Quick bietet die folgenden Animator-Typen:

Animierte Sprites

Das Konzept der animierten Sprites unterscheidet sich von dem Konzept der Animationen, das an anderer Stelle auf dieser Seite verwendet wird. Wenn Sie ein animiertes Bild oder Sprite erstellen oder verwenden möchten, lesen Sie bitte die Dokumentation über Sprite-Animationen.

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