Styling Qt Quick Controls
Verfügbare Styles
Qt Quick Controls wird mit einer Auswahl an Stilen geliefert.
Basic-Stil
Der Basic Style ist ein einfacher und leichter Allround-Style, der die maximale Leistung für Qt Quick Controls bietet.
Fusion-Stil
Das helle Thema des Fusion-Stils. | Das dunkle Design des Fusion-Stils. |
Der Fusion-Stil ist ein plattformunabhängiger Stil, der ein desktop-orientiertes Aussehen und Gefühl für Qt Quick Controls bietet.
Imagine-Stil
Der Imagine-Stil basiert auf Bild-Assets. Der Stil wird mit einem Standardsatz von Bildern geliefert, der leicht geändert werden kann, indem ein Verzeichnis mit Bildern unter Verwendung einer vordefinierten Namenskonvention bereitgestellt wird.
macOS-Stil
Das helle Thema des macOS-Stils. | Das dunkle Thema des macOS-Stils. |
Der macOS-Stil ist ein nativer Stil für macOS.
Hinweis: Dieser Stil ist nur für Anwendungen verfügbar, die unter macOS laufen.
iOS-Stil
Das helle Thema des iOS-Stils. | Das dunkle Design des iOS-Stils. |
Der iOS-Stil ist ein nativer Stil für iOS, der auf Bildelementen basiert.
Hinweis: Dieser Stil ist nur für Anwendungen verfügbar, die unter iOS laufen.
Material-Stil
Das helle Thema des Material-Stils. | Das dunkle Design des Material-Stils. |
Der Material Style bietet ein ansprechendes Design, das auf den Google Material Design Guidelines basiert, benötigt aber mehr Systemressourcen als der Basic Style.
Universal-Stil
Das helle Design des Stils Universal. | Das dunkle Design des Universal-Stils. |
Der Universal Style bietet ein ansprechendes Design, das auf den Microsoft Universal Design Guidelines basiert, erfordert jedoch mehr Systemressourcen als der Basic Style.
Windows-Stil
Der Windows-Stil ist ein nativer Stil für Windows.
Hinweis: Dieser Stil ist nur für Anwendungen verfügbar, die unter Windows laufen.
FluentWinUI3-Stil
Das helle Thema des FluentWinUI3-Stils. | Das dunkle Design des FluentWinUI3-Stils. |
Der FluentWinUI3-Stil ist ein moderner, nativer Stil für Plattformen mit Windows 11 und höher, der den Fluent UI- und WinUI 3-Designrichtlinien folgt. FluentWinUI3 kann auf allen unterstützten Plattformen ausgeführt werden.
Stile verwenden in Qt Quick Controls
Standardstile
Wenn kein Stil explizit festgelegt ist, wird ein Standardstil verwendet. Welcher Stil verwendet wird, hängt vom jeweiligen Betriebssystem ab:
- Android: Material-Stil
- iOS: iOS-Stil
- Linux: Fusion-Stil
- macOS: macOS-Stil
- Windows: Windows-Stil
Für alle anderen Betriebssysteme wird der Basic Style verwendet.
Auswahl des Stils zur Kompilierzeit
Die Auswahl eines Stils zur Kompilierzeit ist eine Möglichkeit, einen Stil zu bestimmen, der beim Importieren in QML verwendet werden soll. Um zum Beispiel den Stil Material zu importieren:
// The style must be imported before any other QtQuick.Controls imports. import QtQuick.Controls.Material ApplicationWindow { // ... }
Beachten Sie, dass QtQuick.Controls (das für die Stilauswahl zur Laufzeit zuständig ist) nicht importiert wird. Der Fallback-Stil wird durch das qmldir des Stils angegeben:
module QtQuick.Controls.Material # ... import QtQuick.Controls.Basic auto
Der Vorteil der Stilauswahl zur Kompilierzeit besteht darin, dass der QML-Compiler weiß, welcher spezifische Stil verwendet wird, und C++-Code für Bindungen generieren kann.
Ein weiterer Vorteil ist, dass das QtQuick.Controls-Plugin nicht verwendet wird und daher nicht mit der Anwendung bereitgestellt werden muss.
Explizite Importe sind auch erforderlich, wenn Ihre Anwendung statisch erstellt wird.
Ein Nachteil der Stilauswahl zur Kompilierzeit ist, dass eine ausführbare Datei nicht mehrere Stile unterstützen kann, da jeder Stil seinen eigenen benötigt.
Auswahl von Stilen zur Laufzeit
Die Auswahl des Stils zur Laufzeit ist eine Möglichkeit, einen Stil durch den Import von QtQuick.Controls
zu spezifizieren:
import QtQuick.Controls
Das QtQuick.Controls-Plugin importiert den Stil, der zur Laufzeit auf eine der folgenden Weisen festgelegt wurde:
- QQuickStyle::setStyle()
- Das
-style
Kommandozeilenargument - Die Umgebungsvariable QT_QUICK_CONTROLS_STYLE
- Die Konfigurationsdatei qtquickcontrols2.conf
Die Priorität dieser Ansätze folgt der Reihenfolge, in der sie aufgelistet sind, vom höchsten zum niedrigsten. Das heißt, dass die Verwendung von QQuickStyle
zum Festlegen des Stils immer Vorrang vor der Verwendung des Befehlszeilenarguments hat, zum Beispiel.
In ähnlicher Weise kann der Fallback-Stil über eine der folgenden Methoden festgelegt werden:
- QQuickStyle::setFallbackStyle()
- Die Umgebungsvariable QT_QUICK_CONTROLS_FALLBACK_STYLE
- Die Konfigurationsdatei qtquickcontrols2.conf
Hinweis: Sie können den Fallback-Stil nur dynamisch auswählen, wenn er nicht statisch in der qmldir-Datei des Hauptstils ausgewählt wurde.
Der Vorteil der Stilauswahl zur Laufzeit besteht darin, dass eine einzelne Anwendungsbinärdatei mehrere Stile unterstützen kann, was bedeutet, dass der Endbenutzer wählen kann, mit welchem Stil er die Anwendung ausführen möchte.
Ein Nachteil dieses Ansatzes ist, dass der QML-Compiler nicht wissen kann, welcher spezifische Stil verwendet wird und daher keinen C++-Code für Bindungen an Eigenschaften von Qt Quick Controls -Typen erzeugen kann. Dies hat keinen Einfluss auf die Fähigkeit des QML-Compilers, C++ für Bindungen an Typen aus anderen Modulen zu generieren.
Verwendung von QQuickStyle in C++
QQuickStyle bietet eine C++-API zum Konfigurieren eines bestimmten Stils. Im folgenden Beispiel wird eine Anwendung Qt Quick Controls mit dem Stil Material ausgeführt:
QQuickStyle::setStyle("Material");
Siehe die ausführliche Beschreibung von QQuickStyle für weitere Details.
Befehlszeilenargument
Die Übergabe eines -style
Befehlszeilenarguments ist der bequemste Weg, um verschiedene Stile zu testen. Sie hat Vorrang vor den anderen unten aufgeführten Methoden. Im folgenden Beispiel wird eine Qt Quick Controls Anwendung mit dem Stil Material ausgeführt:
./app -style Material
Umgebungsvariable
Das Setzen der Umgebungsvariablen QT_QUICK_CONTROLS_STYLE
kann verwendet werden, um eine systemweite Stilpräferenz zu setzen. Sie hat Vorrang vor der unten erwähnten Konfigurationsdatei. Im folgenden Beispiel wird eine Anwendung Qt Quick Controls mit dem Stil Universal ausgeführt:
QT_QUICK_CONTROLS_STYLE=Universal ./app
Eine vollständige Liste der unterstützten Umgebungsvariablen finden Sie unter Unterstützte Umgebungsvariablen in Qt Quick Controls.
Konfigurationsdatei
Qt Quick Controls unterstützt eine spezielle Konfigurationsdatei, :/qtquickcontrols2.conf
, die in die Ressourcen einer Anwendung eingebaut wird.
Die Konfigurationsdatei kann den bevorzugten Stil (der mit einer der oben beschriebenen Methoden überschrieben werden kann) und bestimmte stilspezifische Attribute angeben. Das folgende Beispiel legt fest, dass der bevorzugte Stil der Stil Material ist.
[Controls] Style=Material
Weitere Details zur Konfigurationsdatei finden Sie unter Qt Quick Controls Konfigurationsdatei.
Verwandte Informationen
- Basis-Stil
- Fusion-Stil
- Imagine-Stil
- Material-Stil
- Universal-Stil
- FluentWinUI3-Stil
- Anpassen von Qt Quick Controls
- Dateiselektoren verwenden mit Qt Quick Controls
- Bereitstellen von Qt Quick Controls Anwendungen
- Qt Quick Controls Konfigurationsdatei
- Unterstützte Umgebungsvariablen in Qt Quick Controls
© 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.