Qt Quick Exemples - Fenêtre et écran
Cet exemple présente les types Window et Screen en QML.

Window and Screen montre comment
- créer une fenêtre en QML
- contrôler la fenêtre visibility
- présenter un écran d'accueil au démarrage de l'application
- accéder aux propriétés de la fenêtre Screen
Il montre également comment intégrer QML dans des ressources et fournir une icône pour créer une application de bureau QML autonome.
Exécution de l'exemple
Pour exécuter l'exemple à partir de Qt Creatorouvrez le mode Welcome et sélectionnez l'exemple à partir de Examples. Pour plus d'informations, voir Qt Creator: Tutoriel : Construire et exécuter.
Mise en œuvre de la fenêtre
Un écran de démarrage peut être créé avec le drapeau Qt.SplashScreen, et doit être ApplicationModal pour empêcher toute interaction avec la fenêtre principale. Si la fenêtre d'accueil est également transparente et affiche une image partiellement transparente, elle ressemblera alors à une fenêtre en forme.
Window { id: splash color: "transparent" title: "Splash Window" modality: Qt.ApplicationModal flags: Qt.SplashScreen property int timeoutInterval: 2000 signal timeout
Dans cet exemple, Timer fermera automatiquement l'écran de démarrage, mais dans une application réelle, vous voudrez peut-être vous connecter à un signal de la logique de l'application pour cacher l'écran de démarrage une fois l'initialisation terminée.
Timer { interval: splash.timeoutInterval; running: splash.visible; repeat: false onTriggered: splash.exit() }
La fenêtre principale de cet exemple est la fenêtre de contrôle, avec quelques boutons et cases à cocher pour contrôler et fournir un retour d'information sur l'état d'une fenêtre secondaire. Chaque case à cocher possède une liaison avec la propriété dont elle affiche l'état, ainsi qu'un gestionnaire onClicked pour modifier l'état. Il s'agit d'un modèle typique pour créer une liaison bidirectionnelle tout en évitant les boucles de liaison.
CheckBox { text: "Windowed" height: showButton.height width: col.cellWidth Binding on checked { value: root.testWindow.visibility === Window.Windowed } onClicked: root.testWindow.visibility = Window.Windowed }
Screen CurrentScreen.qml possède plusieurs propriétés qui sont généralement utiles aux applications qui ont besoin de faire pivoter un contenu lorsque l'orientation de l'écran change, de positionner des fenêtres sur l'écran ou de convertir des unités réelles en unités logiques de pixels. CurrentScreen.qml (qui est affiché en ligne dans window.qml, ou qui peut être exécuté seul avec l'outil qml) affiche simplement les valeurs des propriétés, tandis que l'écran d'accueil les utilise pour centrer la fenêtre sur l'écran.
x: (Screen.width - splashImage.width) / 2 y: (Screen.height - splashImage.height) / 2
Si un site Window est imbriqué dans un site Item ou une autre fenêtre, la fenêtre intérieure devient transitoire pour la fenêtre extérieure (voir Window pour plus d'explications). Mais si vous voulez créer plusieurs fenêtres de haut niveau en tant que pairs non liés, vous pouvez les créer à l'intérieur d'un élément racine non visuel QtObject, comme le fait cet exemple.
© 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.