Qt Widgets
L'interface Qt Widgets Module fournit un ensemble d'éléments d'interface utilisateur permettant de créer des interfaces utilisateur classiques de type bureau. Voir la vue d'ensemble des interfaces utilisateur pour plus d'informations sur l'utilisation des widgets.
Widgets
Les widgets sont les principaux éléments permettant de créer des interfaces utilisateur dans Qt Widgets. Les widgets peuvent afficher des données et des informations d'état, recevoir des données de l'utilisateur et fournir un conteneur pour d'autres widgets qui doivent être regroupés. Un widget qui n'est pas intégré dans un widget parent est appelé une fenêtre.

La classe QWidget fournit la capacité de base de rendre à l'écran et de gérer les événements d'entrée de l'utilisateur. Tous les éléments d'interface utilisateur fournis par Qt XML sont des sous-classes de QWidget ou sont utilisés en relation avec une sous-classe de QWidget. Pour créer des widgets personnalisés, sous-classez QWidget ou une sous-classe appropriée et réimplémentez les gestionnaires d'événements virtuels.
- Widgets de fenêtre et de dialogue
- Fenêtre principale de l'application
- Fenêtres de dialogue
- Focus clavier dans les widgets
Styles
Les styles dessinent au nom des widgets et encapsulent l'aspect et la convivialité d'une interface graphique. Les widgets intégrés à Qt Widgets utilisent la classe QStyle pour réaliser la quasi-totalité de leurs dessins, ce qui garantit qu'ils ressemblent exactement aux widgets natifs équivalents.
|
|
|
Lesfeuilles de style de Qt sont un mécanisme puissant qui vous permet de personnaliser l'apparence des widgets, en plus de ce qui est déjà possible en sous-classant QStyle.
Dispositions
Lesdispositions sont un moyen élégant et flexible d'organiser automatiquement les widgets enfants dans leur conteneur. Chaque widget communique ses besoins en taille à la disposition par le biais des propriétés sizeHint et sizePolicy, et la disposition distribue l'espace disponible en conséquence.
|
|
Qt Widgets Designer est un outil puissant qui permet de créer et d'organiser de manière interactive des widgets dans des présentations.
Classes de modèles et de vues
L'architecture modèle/vue fournit des classes qui gèrent la manière dont les données sont présentées à l'utilisateur. Les applications axées sur les données qui utilisent des listes et des tableaux sont structurées de manière à séparer les données et la vue à l'aide de modèles, de vues et de délégués.

Vue graphique
Le cadre de travail de la vue graphique permet de gérer et d'interagir avec un grand nombre d'éléments graphiques 2D personnalisés, ainsi qu'avec un widget de vue pour visualiser les éléments, avec prise en charge du zoom et de la rotation.

Utilisation du module
L'utilisation de l'API C++ d'un module Qt nécessite l'établissement d'un lien avec la bibliothèque du module, soit directement, soit par l'intermédiaire d'autres dépendances. Plusieurs outils de construction disposent d'un support dédié à cet effet, notamment CMake et qmake.
Construction avec CMake
Utilisez la commande find_package() pour localiser le composant de module nécessaire dans le paquetage Qt6:
find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)Pour plus de détails, voir l'aperçu de la construction avec CMake.
Construction avec qmake
Pour configurer le module en vue de sa construction avec qmake, ajoutez le module en tant que valeur de la variable QT dans le fichier .pro du projet :
QT += widgets
Articles et guides
- Tutoriel sur les widgets
- Pour commencer à programmer avec Qt Widgets
- Qt Creator: Tutoriel : Qt Widgets application
- Tutoriel Modèle/Vue
Exemples
Référence API
Évolution des modules
Changes to Qt Widgets liste les changements importants dans l'API et les fonctionnalités des modules qui ont été effectués pour la série Qt 6 de Qt.
Licences
Le module Qt Widgets est disponible sous licence commerciale auprès de The Qt Company. Il est également disponible sous des licences de logiciel libre : La licence GNU Lesser General Public License, version 3, ou la licence GNU General Public License, version 2. Voir Qt Licensing pour plus de détails.
© 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.




