Benutzeroberflächen
Die wichtigsten Technologien des Qt Interface Frameworks für Benutzeroberflächen sind Qt Quick und Qt Widgets. „ Qt Quick “-Oberflächen sind flüssig, dynamisch und eignen sich am besten für Touch-Oberflächen. „ Qt Widgets “ dienen zur Erstellung komplexer Desktop-Anwendungen. Sie können „ Qt Quick “- und „ Qt Widgets “-Oberflächen mit dem nativen Look-and-Feel der Zielplattform erstellen.
Das Erstellen von Benutzeroberflächen mit Qt Quick
Qt Quick dient der Erstellung dynamischer und flüssiger Benutzeroberflächen. Das Qt Quick Controls Modul stellt QML-Typen wie Schaltflächen, Dialoge und Menüs bereit. Sie können QML, eine deklarative Sprache, zum Erstellen der Benutzeroberfläche und JavaScript zur Implementierung der Logik verwenden.
Die folgende Liste enthält weiterführende Übersichten:
- Qt Quick Controls
- Erste Schritte mit „ Qt Quick “-Anwendungen
- Erste Schritte mit QML
- Glossar der QML-Begriffe
- Visuelle Typen
- Positionierer und Layouts
- Verarbeitung von Benutzereingaben
- Anzeige von Text
- Animationen
- Integration von JavaScript in QML
- Qt Quick 3D - Add-on für 3D-Grafiken
- Shader ToolsQt XML-ph-0000@deepl.internal - Add-on für Shader-Effekte
Qt Widgets Benutzeroberflächen
Qt Widgets sind die Benutzeroberflächenelemente, die in Desktop-Umgebungen typisch sind. Die Widgets lassen sich gut in die zugrunde liegende Plattform integrieren und bieten ein natives Look-and-Feel unter Windows, Linux und macOS. Die Widgets sind ausgereifte und funktionsreiche Benutzeroberflächenelemente, die sich vor allem für traditionelle Benutzeroberflächen eignen. Im Gegensatz zu Qt Quicksind die Widgets für die Erstellung umfangreicher Desktop-Anwendungen gedacht und weniger geeignet für die Entwicklung touchorientierter Anwendungen mit flüssigen Benutzeroberflächen.
Die folgende Liste enthält zugehörige Übersichten zu „ Qt Widgets “:
- Widget-Klassen
- Animations-Framework
- Hauptfenster der Anwendung
- Dialogfenster
- Drag & Drop
- Gesten in Widgets und der Grafikansicht
- Layout-Verwaltung
- Fenster- und Dialog-Widgets
- Stile und stilabhängige Widgets
Vergleich von UI-Technologien
Die folgende Tabelle enthält einen Vergleich von „ Qt Quick “ und „ Qt Widgets “ und hebt deren Stärken, Einschränkungen und ideale Anwendungsfälle hervor:
| Funktion | Qt Quick und Qt Quick Controls | Qt Widgets | Erläuterung |
|---|---|---|---|
| Hauptsprachen | QML und JavaScript | C++ | Qt Quick ist deklarativ. Qt Widgets ist imperativ, klassisches C++. |
| Natives Look-and-Feel | Ja (über „ Qt Quick Controls “-Stile). | Ja (native Desktop-Widgets). | Beide unterstützen ein natives Look-and-Feel auf ihren Zielplattformen. |
| Individuelle Gestaltung | Ja (anpassbare Stile, benutzerdefinierte QML-Komponenten). | Ja (Qt-Stylesheets). | Beide Frameworks ermöglichen eine umfassende individuelle Gestaltung über verschiedene Mechanismen. |
| Flüssige Animationen und Übergänge | Ja (integrierte GPU-beschleunigte Animationen). | Eingeschränkt (Unterstützung über „ QPropertyAnimation “, jedoch nicht für flüssige UI-Animationen ausgelegt). | Qt Quick ist für animierte, moderne Benutzeroberflächen konzipiert. Qt Widgets sind es nicht. |
| Touch-Unterstützung | Ja (für Touch und Gesten konzipiert). | Eingeschränkt (Touch-Ereignisse sind vorhanden, aber „ Qt Widgets “ gehen von Maus- und Tastatureingaben aus). | Qt Quick bewältigt multimodale Eingaben besser. „ Qt Widgets “ erfordern mehr manuellen Aufwand für eine gute Touch-Benutzererfahrung. |
| Branchenübliche Widgets | Ja (bietet gängige Desktop-Steuerelemente, und benutzerdefinierte Komponenten können jedes erforderliche Widget implementieren). | Ja (umfangreiche Auswahl an ausgereiften, vorgefertigten Desktop-Widgets). | Qt Quick kann alle Arten von Desktop-Steuerelementen implementieren, aber Qt Widgets enthalten standardmäßig eine größere Auswahl an traditionellen Widgets. |
| Modell-/Ansichtsprogrammierung | Ja (flexible Modellunterstützung mit delegatbasierten Ansichten wie ListView und TableView). | Ja (umfassende Auswahl an klassischen MVC-Ansichten, darunter QTableView, QListView und QTreeView). | Beide Technologien unterstützen eine robuste Modell-View-Programmierung. „ Qt Quick “ nutzt Delegaten, um Daten klar von der Darstellung zu trennen, während „ Qt Widgets “ eine große Auswahl an ausgereiften, vorgefertigten Modell-View-Klassen bereitstellt. |
| Schnelle UI-Prototypenerstellung | Ja (sehr schnelle Iteration in QML). | Ja (schnell für herkömmliche Benutzeroberflächen, insbesondere mit dem „Qt Widgets Designer“). | Qt Quick eignet sich besonders gut für schnelles visuelles Prototyping, während „ Qt Widgets “ die schnelle Erstellung klassischer Desktop-Oberflächen mithilfe des „ Qt Widgets -Designers“ ermöglichen. |
| Hardwarebeschleunigte Grafik | Ja (GPU-beschleunigt über den „Qt Quick Scene Graph“). | Teilweise (Widgets werden softwarebasiert gerendert. OpenGL-Widgets sind möglich, jedoch isoliert). | Nur „ Qt Quick “ bietet integrierte GPU-Beschleunigung für die gesamte Szene. Weitere Informationen finden Sie unter „Grafik “. |
| Graphical Effects | Ja (shaderbasierte Unschärfe, Leuchten, Schlagschatten, Farbeffekte und mehr). | Eingeschränkt (nur einfache Effekte über Qt GUI nur). | Qt Quick bietet umfangreiche, GPU-gesteuerte visuelle Effekte. Qt Widgets bieten nur einfache CPU-Effekte. |
| Rich-Text-Verarbeitung. | Ja (die Rich-Text-Dokumentklassen von Qt können in Qt Quick und Qt Quick Controls' TextArea verwendet werden, erfordern jedoch möglicherweise eine C++-Implementierung). | Ja (vollständige Unterstützung durch QTextDocument, QTextEdit und zugehörige Klassen). | Beide Technologien können zum Erstellen komplexer Texteditoren verwendet werden. „ Qt Quick “ lässt sich über „ QTextDocument “ in die Rich-Text-Engine von Qt integrieren, während „ Qt Widgets “ eine ausgereifte Sammlung einsatzbereiter Klassen für die Textverarbeitung bereitstellt. |
Hinweis: Sie können QML-Ansichten in einer Benutzeroberfläche von „ Qt Widgets “ anzeigen. Weitere Informationen finden Sie unter „Qt Quick -Widgets“.
Verwandte Themen
Die folgenden Seiten enthalten weitere Informationen zum Entwerfen und Entwickeln von Benutzeroberflächen:
- Design-Tools – Überblick über Benutzeroberflächen-Tools für Designer und Entwickler
- Grafiken – Überblick über Grafiken
- Modell-/Ansichtsprogrammierung
- Hohe DPI
© 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.