QML-Anwendungen

QML ist eine deklarative Sprache, mit der Benutzeroberflächen in Form ihrer visuellen Komponenten und deren Interaktion und Beziehung zueinander beschrieben werden können. Es handelt sich um eine hochgradig lesbare Sprache, die entwickelt wurde, um Komponenten auf dynamische Weise miteinander zu verbinden, und die eine einfache Wiederverwendung und Anpassung von Komponenten innerhalb einer Benutzeroberfläche ermöglicht. Mit dem Modul QtQuick können Designer und Entwickler auf einfache Weise flüssig animierte Benutzeroberflächen in QML erstellen und haben die Möglichkeit, diese Benutzeroberflächen mit beliebigen C++-Backend-Bibliotheken zu verbinden.

Was ist QML?

QML ist eine Sprache zur Spezifikation und Programmierung von Benutzeroberflächen. Sie ermöglicht es Entwicklern und Designern gleichermaßen, hochleistungsfähige, flüssig animierte und visuell ansprechende Anwendungen zu erstellen. QML bietet eine gut lesbare, deklarative, JSON-ähnliche Syntax mit Unterstützung für imperative JavaScript-Ausdrücke in Kombination mit dynamischen Eigenschaftsbindungen.

import QtQuick
import QtQuick.Controls

ApplicationWindow {
    width: 400
    height: 400
    visible: true

    Button {
        id: button
        text: "A Special Button"
        background: Rectangle {
            implicitWidth: 100
            implicitHeight: 40
            color: button.down ? "#d6d6d6" : "#f6f6f6"
            border.color: "#26282a"
            border.width: 1
            radius: 4
        }
    }
}

Die Infrastruktur der QML-Sprache und -Engine wird durch das Qt Qml Modul bereitgestellt. Ausführliche Informationen über die QML-Sprache finden Sie in der Qt Qml Dokumentation des Moduls.

Auf den folgenden Seiten finden Sie weitere Informationen über QML:

Was ist Qt Quick?

Qt Quick ist die Standardbibliothek der QML-Typen und -Funktionen für QML. Sie umfasst visuelle Typen, interaktive Typen, Animationen, Modelle und Ansichten, Partikeleffekte und Shader-Effekte. Ein QML-Anwendungsentwickler kann mit einer einzigen Importanweisung Zugriff auf all diese Funktionen erhalten.

Die QtQuick QML-Bibliothek wird durch das Qt Quick Modul bereitgestellt. Ausführliche Informationen zu den verschiedenen QML-Typen und anderen von Qt Quick bereitgestellten Funktionen finden Sie in der Qt Quick Dokumentation des Moduls. Qt Quick fügt visuelle Typen, Animationstypen und andere QML-Typen zusätzlich zu den Standard-QML-Typen von Qt Qml hinzu.

Schaltflächen, Menüs und andere Steuerelemente

Für einen Satz von UI-Steuerelementen implementiert das Qt Quick Controls Modul implementiert mehrere Steuerelemente wie Schaltflächen, Menüs und Ansichten. Diese Steuerelemente werden mit mehreren integrierten Stilen geliefert, die verwendet werden können, und unterstützen auch die Erstellung von benutzerdefinierten Stilen.

Qt Quick Anwendungsentwicklung

Qt Creator verfügt über integrierte Unterstützung für die Erstellung von Qt Quick Anwendungen. Mit den Qt VS Tools und der Qt Extension for VS Code können Sie auch Qt Quick Anwendungen mit Visual Studio und Visual Studio Code erstellen. Die QML Language Server kann von jeder IDE aus verwendet werden, die das Sprachserverprotokoll unterstützt.

Für einen designzentrierten Arbeitsablauf verwenden Sie Qt Design Studio.

Weitere Informationen zur Erstellung von Qt Quick Anwendungen finden Sie auf den folgenden Seiten:

Code-Beispiele und Demos

Um mehr über die Verwendung von QML-Code zu erfahren, gibt es mehrere Codebeispiele, die zeigen, wie QML-Typen verwendet werden. Darüber hinaus gibt es mehrere Demos, die zeigen, wie QML-Code in Anwendungen verwendet wird.

Themen der fortgeschrittenen Anwendungsentwicklung

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