Sur cette page

Premiers pas avec les contrôles Qt Quick

Voici un exemple de base d'un fichier QML qui utilise des contrôles :

import QtQuick
import QtQuick.Controls

ApplicationWindow {
    title: "My Application"
    width: 640
    height: 480
    visible: true

    Button {
        text: "Push Me"
        anchors.centerIn: parent
    }
}

Mise en place de contrôles à partir de C++

Bien que QQuickView soit traditionnellement utilisé pour afficher des fichiers QML dans une application C++, cela signifie que vous ne pouvez définir les propriétés de la fenêtre qu'à partir de C++.

Avec les contrôles Qt Quick, déclarez ApplicationWindow comme élément racine de votre application et lancez-la en utilisant QQmlApplicationEngine à la place. Cela garantit que vous pouvez contrôler les propriétés de la fenêtre de premier niveau à partir de QML.

Voici un exemple de base d'un fichier source qui utilise des contrôles :

#include <QGuiApplication>
#include <QQmlApplicationEngine>

int main(int argc, char *argv[])
{
    QGuiApplication app(argc, argv);
    QQmlApplicationEngine engine;
    engine.load(QUrl(QStringLiteral("qrc:/main.qml")));
    return app.exec();
}

Utilisation de données C++ à partir de QML

Si vous devez enregistrer une classe C++ pour l'utiliser à partir de QML, vous pouvez appeler qmlRegisterType() avant de déclarer votre QQmlApplicationEngine. Pour plus d'informations, voir Définir les types QML à partir de C++.

Si vous devez exposer des données aux composants QML, vous devez les rendre disponibles dans le contexte du moteur QML actuel. Voir QQmlContext pour plus d'informations.

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