Sur cette page

Langages Qt

L'API Qt est implémentée en C++ et offre des fonctionnalités supplémentaires facilitant le développement multiplateforme. Qt prend en charge QML, son propre langage déclaratif basé sur JavaScript, ainsi que Qt Quick, un framework basé sur QML. Il est conçu pour décrire l’interface utilisateur d’un programme : son apparence et son comportement. Comme alternative à l’utilisation du C++, il existe des liaisons Qt pour Python sous la forme de Qt for Python.

C++

Le framework Qt contient un ensemble complet de classes de bibliothèques C++ hautement intuitives et modularisées, et regorge d’API destinées à simplifier le développement de vos applications. Qt fournit une bibliothèque de classes C++ intuitive, dotée d’un ensemble riche de composants de base pour le développement en C++, et ajoute les fonctionnalités suivantes au C++ :

QML

Qt Qml fournit un framework permettant de développer des applications et des bibliothèques avec le langage QML. Il définit et implémente le langage ainsi que l’infrastructure du moteur, et fournit une API permettant d’activer et d’étendre le langage QML avec des types personnalisés, ainsi que d’intégrer du code QML à du JavaScript et du C++. Le module Qt Qml fournit à la fois une interface QML API et une interface C++ API.

Le Qt Qml module fournit le langage et l’infrastructure nécessaires aux applications QML. Le Qt Quick module fournit de nombreux composants visuels, la prise en charge du modèle-vue, un framework d’animation et bien plus encore pour la création d’interfaces utilisateur.

Le langage QML vous permet de définir des arborescences d’objets avec une syntaxe de type JSON. Il vous permet également d’implémenter de la logique en JavaScript.

JavaScript pour les applications QML

Les expressions JavaScript permettent au code QML de contenir de la logique d’application. Qt Qml fournit le framework permettant d’exécuter des expressions JavaScript dans QML et depuis le C++. Il prend en charge :

  • Le développement rapide tant des interfaces utilisateur que de la logique d’application.
  • L’environnement hôte JavaScript fourni par QML, capable d’exécuter du code JavaScript valide, tel que spécifié dans la 7e édition de la norme, ainsi que certaines extensions issues de normes plus récentes.
  • La création dynamique d’objets depuis JavaScript. Cela permet de retarder l’instanciation des objets jusqu’à ce qu’elle soit nécessaire, améliorant ainsi le temps de démarrage de l’application.

Qt for Python

Qt for Python propose les liaisons Python officielles pour Qt, ce qui vous permet d'utiliser Python pour écrire vos applications Qt. Le projet comprend les composants suivants :

  • PySide6: les liaisons Python officielles pour Qt 6
  • Shiboken6: un outil de génération de liaisons, permettant d’exposer du code C++ à Python
  • Outils: pour faciliter le développement d’applications avec PySide6
  • Module Shiboken: fournit des fonctions utilitaires pour le débogage

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