Sur cette page

Styles et widgets prenant en charge les styles

Les styles (classes héritant de ` QStyle`) se chargent du tracé à la place des widgets et encapsulent l'apparence et le comportement d'une interface graphique. ` QStyle ` est une classe de base abstraite. Les widgets intégrés de Qt l'utilisent pour la quasi-totalité de leur tracé, ce qui leur permet d'avoir exactement le même aspect que les widgets natifs équivalents.

Qt est fourni avec une sélection de styles intégrés. Les styles ` windows ` et ` fusion ` font partie du module ` Qt Widgets `. Les styles de plate-forme, tels que ` windows11 ` sous Windows et ` macos ` sous macOS, sont des plugins disponibles uniquement sur leur plate-forme respective. La fonction ` QStyleFactory ` répertorie les styles disponibles à l’exécution et les crée par leur nom. La fonction ` QApplication::setStyle()` définit un style comme style de l’application, et les utilisateurs peuvent sélectionner un style à l’aide de l’option de ligne de commande ` -style `.

Une implémentation de ` QStyle ` permet de donner à une application de production son apparence propre. StyleKit en fournit une, ` QStyleKitStyle`, qui lit une description QML du design. Pour savoir quand utiliser un style, StyleKit ou une feuille de style, consultez la section « Approches de mise en forme » à l’adresse Qt Widgets.

Personnalisation d’un style

Pour modifier certains aspects d’un style existant, héritez de ` QProxyStyle ` et réimplémentez les fonctions virtuelles qui dessinent ou mesurent les éléments que vous souhaitez modifier. Un style proxy encapsule un autre style et lui transmet tout ce que vous ne réimplémentez pas.

Vous pouvez nommer explicitement le style de base ou ne pas le spécifier. Un style de base explicite vous offre un contrôle total et convient aux personnalisations qui dépendent du comportement d’un style particulier. Sans style de base, le proxy encapsule le style de l’application ; votre personnalisation s’applique donc par-dessus ce que fournit la plateforme.

The QStyle class documentation illustre un style proxy qui remplace les flèches d’une zone de sélection.

Implémentation d’un style

QCommonStyle fournit une base pratique pour les implémentations complètes de styles. Il implémente le comportement commun à tous les styles de Qt, tels que la disposition des sous-éléments et les calculs de taille, et vous laisse le soin du dessin. Héritez de ` QCommonStyle ` et réimplémentez les fonctions de dessin, ainsi que les métriques en pixels, les rectangles des sous-éléments et les indications de style qui diffèrent des valeurs par défaut communes. Les styles intégrés de Qt ne font pas partie de l’API publique et ne peuvent pas servir de classes de base ; enveloppez-les plutôt avec ` QProxyStyle `.

L’implémentation d’un style complet est une tâche complexe. Les pages suivantes décrivent le fonctionnement de l’API de style, retracent le processus de dessin d’un widget depuis son événement `paint` jusqu’au style, et répertorient les éléments, états et options utilisés par chaque widget :

Les éléments dessinés par les widgets sont identiques dans tous les styles ; vous pouvez donc également utiliser cette référence lorsque vous écrivez un widget sensible au style ou un délégué.

Classes pour la personnalisation des widgets

Utilisez ces classes pour personnaliser l’apparence d’une application.

QColor

Couleurs basées sur des valeurs RVB, HSV ou CMJN

QColorSpace

Abstraction de l'espace colorimétrique

QColorTransform

Transformation entre espaces colorimétriques

QCommonStyle

Encapsule l'aspect et la convivialité (Look and Feel) communs d'une interface graphique

QCursor

Curseur de souris de forme arbitraire

QFont

Spécifie une requête concernant une police utilisée pour l'affichage du texte

QFontDatabase

Informations sur les polices disponibles dans le système de fenêtrage sous-jacent

QFontInfo

Informations générales sur les polices

QGraphicsAnchor

Représente un ancrage entre deux éléments dans un QGraphicsAnchorLayout

QGraphicsAnchorLayout

Disposition permettant d’ancrer des widgets les uns aux autres dans la vue graphique

QPalette

Contient des groupes de couleurs pour chaque état de widget

QStyle

Classe de base abstraite qui encapsule l'apparence et le comportement d'une interface graphique

QStyleFactory

Crée des objets QStyle

QStyleHintReturn

Conseils de style renvoyant plus que des types de données de base

QStyleHintReturnMask

Indicateurs de style renvoyant une QRegion

QStyleHintReturnVariant

Indicateurs de style renvoyant un QVariant

QStyleKitStyle

Applique un style Qt Labs StyleKit à Qt Widgets

QStyleOption

Stocke les paramètres utilisés par les fonctions QStyle

QStylePainter

Classe d'aide au dessin d'éléments QStyle à l'intérieur d'un widget

Voir également QStyle, QProxyStyle, QCommonStyle, QStylePainter, QStyleOption et Approches de mise en forme pour Qt Widgets.

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