Gestaltung Qt Quick Controls
Verfügbare Stile
Qt Quick Controls bietet eine Auswahl an Stilen.
Basis-Stil

Der Basisstil ist ein einfacher und schlanker Allround-Stil, der die maximale Leistung für „ Qt Quick Controls “ bietet.
Fusion-Stil
Das helle Design des Fusion-Stils. |
Das dunkle Design des Fusion-Stils. |
Der „Fusion“-Stil ist ein plattformunabhängiger Stil, der ein desktoporientiertes Erscheinungsbild für Qt Quick Controls bietet.
„Imagine“-Design

Der „Imagine“-Stil basiert auf Bildelementen. Der Stil enthält einen Standardsatz an Bildern, der sich leicht ändern lässt, indem ein Verzeichnis mit Bildern bereitgestellt wird, die einer vordefinierten Namenskonvention entsprechen.
macOS-Stil
Das helle Design des macOS-Stils. |
Das dunkle Design des macOS-Stils. |
Der macOS-Stil ist ein Stil, der wie ein natives Element von macOS aussieht.
Hinweis: Dieser Stil ist nur für Anwendungen verfügbar, die unter macOS laufen.
iOS-Stil
Das helle Design im iOS-Stil. |
Das dunkle Design im iOS-Stil. |
Der iOS-Stil ist ein nativ anmutender 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 Design des Material-Stils. |
Das dunkle Design des Material-Stils. |
Der Material-Stil bietet ein ansprechendes Design, das auf den Google Material Design-Richtlinien basiert, benötigt jedoch mehr Systemressourcen als der Basis-Stil.
Universeller Stil
Das helle Design des Universal-Stils. |
Das dunkle Design des Universal-Stils. |
Der Universal-Stil bietet ein ansprechendes Design, das auf den Microsoft-Richtlinien für universelles Design basiert, benötigt jedoch mehr Systemressourcen als der Basic-Stil.
Windows-Stil

Der Windows-Stil ist ein Stil, der wie ein natives Windows-Element aussieht.
Hinweis: Dieser Stil ist nur für Anwendungen verfügbar, die unter Windows ausgeführt werden.
FluentWinUI3-Stil
Das helle Design des FluentWinUI3-Stils. |
Das dunkle Design des FluentWinUI3-Stils. |
Der FluentWinUI3-Stil ist ein moderner, nativ anmutender Stil, der für Plattformen mit Windows 11 und höher entwickelt wurde und den Designrichtlinien von Fluent UI und WinUI 3 folgt. Der FluentWinUI3-Stil kann auf allen unterstützten Plattformen ausgeführt werden.
Verwendung von Stilen in Qt Quick Controls
Standardstile
Wenn kein Stil explizit festgelegt ist, wird ein Standardstil verwendet. Welcher Stil verwendet wird, hängt vom Betriebssystem ab:
- Android: Material-Stil
- iOS: iOS-Stil
- Linux: Fusion-Stil
- macOS: macOS-Stil
- Windows: Windows-Stil
Für alle anderen Betriebssysteme wird der Basis-Stil verwendet.
Stilauswahl zur Kompilierungszeit
Die Stilauswahl zur Kompilierungszeit ist eine Möglichkeit, einen zu verwendenden Stil festzulegen, indem dieser direkt oder indirekt in QML importiert wird. Da die Auswahl zur Kompilierungszeit erfolgt, können Sie den Stil zur Laufzeit nicht mehr ändern, wenn Sie die Stilauswahl zur Kompilierungszeit verwenden.
Die bequemste Art, die Stilauswahl zur Kompilierungszeit zu nutzen, ist der Import des Stils „QtQuick.Controls.Native “. „ QtQuick.Controls.Native “ importiert wiederum den Standardstil für die Zielplattform. Wenn Sie „ QtQuick.Controls.Native “ importieren, sollten Sie weder andere spezifische Stile noch das (zur Laufzeit ausgewählte) Modul „ QtQuick.Controls “ importieren. „ QtQuick.Controls.Native “ importiert den plattformspezifischen Standardstil für Sie, und dieser Stil übernimmt die Fallback-Verarbeitung. Es kann nicht mehr als ein Stil auf oberster Ebene gleichzeitig vorhanden sein. Beispiel:
// Refrain from importing QtQuick.Controls or specific styles.
import QtQuick.Controls.Native
ApplicationWindow {
// ...
}Sie können jedoch auch einen bestimmten Stil zur Kompilierungszeit importieren und dabei die Plattformstandardwerte außer Acht lassen. Um beispielsweise den Material-Stil zu importieren:
// The style must be imported before any other QtQuick.Controls imports
// in order for run-time style selection API like QQuickStyle::name() to
// work.
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 festgelegt:
module QtQuick.Controls.Material
# ...
import QtQuick.Controls.Basic autoDer Vorteil der Stilauswahl zur Kompilierungszeit besteht darin, dass der QML-Compiler weiß, welcher spezifische Stil verwendet wird, und C++-Code für Bindungen generieren kann.
Ein weiterer Vorteil besteht darin, dass das „ QtQuick.Controls “-Plugin nicht verwendet wird und daher nicht zusammen mit der Anwendung bereitgestellt werden muss.
Explizite Importe sind außerdem erforderlich, wenn Ihre Anwendung statisch kompiliert wird.
Ein Nachteil der Stilauswahl zur Kompilierungszeit besteht darin, dass eine ausführbare Datei nicht mehrere Stile unterstützen kann, da jeder Stil seine eigene ausführbare Datei erfordert.
Informationen zur Kombination von Kompilierzeit- und Laufzeit-Stilauswahl finden Sie unter „Kombinierte Stilauswahl “.
Stilauswahl zur Laufzeit
Die Stilauswahl zur Laufzeit ist eine Möglichkeit, einen zu verwendenden Stil durch den Import von „ QtQuick.Controls “ festzulegen:
import QtQuick.ControlsDas Plugin „ QtQuick.Controls “ importiert den Stil, der zur Laufzeit festgelegt wurde, auf eine der folgenden Weisen:
- QQuickStyle::setStyle()
- Das Befehlszeilenargument „
-style“ - Die Umgebungsvariable `QT_QUICK_CONTROLS_STYLE`
- Die Konfigurationsdatei `qtquickcontrols2.conf`
Die Priorität dieser Methoden richtet sich nach der Reihenfolge, in der sie aufgeführt sind, von der höchsten zur niedrigsten. Das heißt, die Festlegung des Stils über ` QQuickStyle ` hat beispielsweise immer Vorrang vor der Verwendung des Befehlszeilenarguments.
Ebenso 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 bereits statisch in der qmldir-Datei des Hauptstils festgelegt wurde.
Der Vorteil der Stilauswahl zur Laufzeit besteht darin, dass eine einzige Anwendungsbinärdatei mehrere Stile unterstützen kann, sodass der Endbenutzer wählen kann, mit welchem Stil die Anwendung ausgeführt werden soll.
Ein Nachteil dieses Ansatzes besteht darin, dass der QML-Compiler nicht erkennen kann, welcher spezifische Stil gerade verwendet wird, und daher keinen C++-Code für Bindungen an Eigenschaften von „ Qt Quick Controls “-Typen generieren kann. Dies hat jedoch keinen Einfluss auf die Fähigkeit des QML-Compilers, C++-Code für Bindungen an Typen aus anderen Modulen zu generieren.
Informationen zur Kombination von Stilauswahl zur Laufzeit und zur Kompilierungszeit finden Sie unter „Mixing Style Selection “.
Stil-spezifische APIs
Einige Stile stellen stil-spezifische APIs zur Verfügung, zum Beispiel das „attached object“ des Material-Stils oder das „attached object“ des Universal-Stils. Diese stil-spezifischen APIs sind nur verfügbar, wenn der jeweilige Stil tatsächlich – direkt oder indirekt – über die Stilauswahl zur Kompilierungs- oder Laufzeit ausgewählt wurde.
Kombination der Stilauswahl
Es wird empfohlen, in Ihrer Anwendung entweder nur die Stilauswahl zur Kompilierungszeit oder nur die zur Laufzeit zu verwenden. Wenn Ihre Anwendung jedoch beispielsweise QML-Code von Drittanbietern lädt, ist es möglicherweise nicht möglich zu steuern, welche Importe verwendet werden. Wenn Sie die beiden Ansätze kombinieren, beachten Sie bitte die folgenden Einschränkungen:
- Die Stilauswahl zur Kompilierungszeit hat Vorrang vor der Stilauswahl zur Laufzeit.
- Der Stil, den Sie verwenden möchten, sollte immer explizit vor allen anderen „Controls“-Importen importiert werden. Wenn Sie dies nicht tun, verhält sich das Theming (z. B. Schriftarten und Farbpaletten) nicht wie erwartet. Der erste explizit importierte Stil ist auch derjenige, den ` QQuickStyle::name()` zurückgibt.
- Der zuletzt explizit importierte Stil ist derjenige, der tatsächlich verwendet wird. Wenn Sie beispielsweise zuerst „
QtQuick.Controls“ und dann „QtQuick.Controls.Material“ importieren, wird bei der Erstellung eines „Button“ die Datei „Button.qml“ des Material-Stils verwendet. Aufgrund des zuvor genannten Punktes zum Thema „Theming“ sollten Sie aus diesem Grund niemals zwei verschiedene Stile explizit in derselben Anwendung importieren. - Wenn Sie die Stilauswahl zur Kompilierungszeit verwenden möchten, aber Code laden, der „
QtQuick.Controls“ importiert, beachten Sie bitte, dass der Aufruf von „ QQuickStyle::name()“, bevor ein Stil explizit importiert wurde, dazu führt, dass der Plattformstandard gemeldet wird. Wenn Sie dies nicht vermeiden können, passen Sie den Stil zuvor über „ QQuickStyle::setStyle()“ oder eine der anderen in „Stilauswahl zur Laufzeit“ aufgeführten Methoden an den zur Kompilierungszeit festgelegten Stil an.
Verwendung von QQuickStyle in C++
QQuickStyle bietet eine C++-API zur Konfiguration eines bestimmten Stils. Das folgende Beispiel führt eine „ Qt Quick Controls “-Anwendung mit dem Material-Stil aus:
QQuickStyle::setStyle("Material");Weitere Informationen finden Sie in der ausführlichen Beschreibung von „ QQuickStyle “.
Befehlszeilenargument
Die Übergabe eines „ -style “-Befehlszeilenarguments ist eine bequeme Möglichkeit, verschiedene Stile zu testen. Diese Methode hat Vorrang vor den anderen unten aufgeführten Methoden. Das folgende Beispiel führt eine „ Qt Quick Controls “-Anwendung mit dem „Material“-Stil aus:
./app -style MaterialUmgebungsvariable
Durch das Setzen der Umgebungsvariablen „ QT_QUICK_CONTROLS_STYLE “ kann eine systemweite Stilpräferenz festgelegt werden. Diese hat Vorrang vor der unten genannten Konfigurationsdatei. Das folgende Beispiel führt eine „ Qt Quick Controls “-Anwendung mit dem Stil „Universal“ aus:
QT_QUICK_CONTROLS_STYLE=Universal ./appEine 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 integriert ist.
In der Konfigurationsdatei können der bevorzugte Stil (der durch eine der zuvor beschriebenen Methoden überschrieben werden kann) sowie bestimmte stilbezogene Attribute festgelegt werden. Das folgende Beispiel legt fest, dass der bevorzugte Stil der „Material“-Stil ist.
[Controls]
Style=MaterialWeitere Informationen zur Konfigurationsdatei finden Sie unter „Qt Quick Controls -Konfigurationsdatei “.
Weiterführende Informationen
- Grundlegender Stil
- Fusion-Stil
- „Imagine“-Stil
- Material-Stil
- Universeller Stil
- FluentWinUI3-Stil
- Anpassen Qt Quick Controls
- Verwendung von Dateiauswahlfeldern mit Qt Quick Controls
- Bereitstellung von „ Qt Quick Controls “-Anwendungen
- Qt Quick Controls Konfigurationsdatei
- Unterstützte Umgebungsvariablen in Qt Quick Controls
© 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.











