Sur cette page

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.

Widget parent contenant plusieurs widgets enfants

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.

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.

Widgets d'onglets de style Windows

Widgets d'onglets de style bureau Fusion

widgets d'onglets à la manière de macOS

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.

Disposition pour 5 enfants

Aménagement pour 6 enfants

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.

Répertoire de fichiers sous forme d'arborescence

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.

Diverses formes et graphiques sur une grille

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

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.