IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Viadeo Twitter Facebook Share on Google+   
Logo Documentation Qt ·  Page d'accueil  ·  Toutes les classes  ·  Toutes les fonctions  ·  Vues d'ensemble  · 

Widgets et layouts

Widgets

Les widgets sont les éléments principaux de la création d'interfaces utilisateur avec Qt. Les widgets peuvent afficher des données et des informations sur un état, recevoir des actions de l'utilisateur et agir comme 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.

image

La classe QWidget fournit la capacité de base d'affichage à l'écran et de gestion des événements. Tous les éléments graphiques que Qt fournit sont hérités de QWidget ou sont utilisés avec une classe fille de QWidget. La création de widgets personnalisés est faite en héritant QWidget ou une classe fille, et en ré-implémentant les gestionnaires d'événements virtuels.

Les layouts

Les layouts sont une façon élégante et facile d'arranger automatiquement les widgets enfants dans leur conteneur. Chaque widget donne ses besoins en taille au layout avec les propriétés sizeHint et sizePolicy, et le layout distribue ensuite l'espace disponible en fonction des besoins.

image image

Qt Designer est un outil puissant pour créer et arranger interactivement des widgets dans des layouts.

Styles de widgets

Les widgets délèguent leur apparence aux styles, qui encapsulent le « look and feel » d'une interface graphique. Les widgets Qt utilisent la classe QStyle pour faire quasiment tous les dessins, ce qui assure qu'ils aient l'apparence exacte des widgets natifs équivalents.

image image image

Les feuilles de style Qt sont un mécanisme puissant qui vous permet de personnaliser l'apparence de vos widgets en plus de ce qui est possible en héritant de QStyle.

Les classes de widgets

Les parties suivantes listent les classes de widgets. Voir la galerie de widgets Qt pour des exemples.

Les widgets de base

Ces widgets de base (contrôles), comme les boutons, les boîtes d'options et les barres de défilement, sont fais pour une utilisation directe.

image image image
image image image
QCheckBox Case à cocher avec un texte
QComboBox Bouton combiné avec liste popup
QCommandLinkButton Bouton de lien dans le style Vista
QDateEdit Widget pour éditer des dates basé sur le widget QDateTimeEdit
QDateTimeEdit Widget pour éditer des dates et heures
QDial Cadran à aiguille rond (comme un compteur de vitesse ou un potentiomètre)
QDoubleSpinBox Champ de saisie acceptant des doubles
QFocusFrame Cadre de focus qui peut être hors de la zone normale de dessin d'un widget
QFontComboBox ComboBox permettant à l'utilisateur de choisir une police d'écriture
QLCDNumber Affiche un nombre avec les chiffres LCD
QLabel Affiche un texte ou une image
QLineEdit Éditeur de texte mono-ligne
QMenu Widget de menu pour les barres de menus, menus contextuels et autres menus popup
QProgressBar Barre de progression horizontale ou verticale
QPushButton Bouton de commande
QRadioButton Bouton de choix avec un texte
QScrollArea Zone de défilement sur un autre widget
QScrollBar Barre de défilement horizontale ou verticale
QSizeGrip Poignée de redimensionnement
QSlider Slider vertical ou horizontal
QSpinBox Champ de saisie numérique
QTabBar Barre d'onglets
QTabWidget Conteneur de widgets en onglets
QTimeEdit Widget pour éditer le temps basé sur le widget QDateTimeEdit
QToolBox Colonne de widgets en onglets
QToolButton Bouton d'accès rapide à des commandes ou options
QWidget Classe de base pour les objets d'interface graphique

Les widgets avancés

Les widgets avancés, comme les onglets et les barres de chargement, fournissent des contrôles d'interface utilisateur plus complexes.

image image image
QCalendarWidget Calendrier par mois permettant à l'utilisateur de sélectionner une date
QColumnView Implémentation modèle/vue d'une vue en colonne
QDataWidgetMapper Transfert entre modèles et widgets de données
QDesktopWidget Accède aux informations sur l'écran dans les systèmes multi-écrans
QListView Vue en liste d'un modèle
QMacCocoaViewContainer Widget pour Mac OS X qui peut être utilisé pour englober des vues arbitraires Cocoa (c'est-à-dire sous-classe de NSView) et les insérer dans Qt
QMacNativeWidget Widget pour Mac OS X qui fournit une façon de mettre des widgets Qt dans les hiérarchies Carbon ou Cocoa suivant la façon dont Qt a été configuré
QTableView Implémentation modèle/vue par défaut d'une vue en tableau
QTreeView Implémentation modèle/vue par défaut d'une vue en arbre
QUndoView Affiche le contenu d'une QUndoStack
QWSEmbedWidget Active les widgets haut niveau embarqués dans Qt pour Linux embarqué
QWebView Widget utilisé pour voir et éditer des contenus Web
QX11EmbedContainer Widget conteneur XEmbed
QX11EmbedWidget Widget client XEmbed
Phonon::VideoWidget Widget qui est utilisé pour afficher des vidéos
image image

Les widgets organisateurs

Les classes comme les séparateurs, barres d'onglets, groupes de boutons, etc, sont utilisées pour organiser et regrouper les primitives des interfaces graphiques pour former des applications et boîtes de dialogue plus complexes.

QButtonGroup Conteneur pour organiser des groupes de boutons
QGroupBox Cadre de groupe avec un titre
QSplitter Implémente un séparateur
QSplitterHandle Gère la fonctionnalité du séparateur
QStackedWidget Pile de widgets où un seul est visible à la fois
QTabWidget Pile de widgets en onglets

Les classes de widgets abstraites

Les classes de widgets abstraites sont des classes de base. Elles ne sont pas utilisables directement, mais fournissent des fonctionnalités lorsqu'elles sont héritées.

QAbstractButton La base abstraite des boutons, fournissant les fonctionnalités communes aux boutons
QAbstractScrollArea Zone de défilement avec des barres de défilement à la demande
QAbstractSlider Slider pour définir un nombre entre deux bornes
QAbstractSpinBox Champ de saisie pour afficher des valeurs numériques
QDialog La classe de base de boîtes de dialogue
QFrame La classe de base des widgets qui peuvent avoir un cadre

Remerciements

Merci à Paul Musti?re pour la traduction et à Ilya Diallo, Jonathan Courtois ainsi qu'à Jacques Thery pour leur relecture.

Cette page est une traduction d'une page de la documentation de Qt, écrite par Nokia Corporation and/or its subsidiary(-ies). Les éventuels problèmes résultant d'une mauvaise traduction ne sont pas imputables à Nokia. Qt 4.7
Copyright © 2021 Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon, vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts. Cette page est déposée à la SACD.
Vous avez déniché une erreur, une redirection cassée ou tout autre problème, quel qu'il soit ? Ou bien vous désirez participer à ce projet de traduction ? N'hésitez pas à nous contacter ou par MP !