Spécification du style dessiné par le propriétaire
Remonter à Manipulation des contrôles - Index
Pour personnaliser le dessin d'un contrôle, vous devez spécifier des gestionnaires d'événements qui restituent l'image du contrôle quand il doit être dessiné. Certains contrôles reçoivent automatiquement ces événements. Par exemple, les vues liste ou arborescentes et les barres d'outils reçoivent les événements aux diverses étapes du processus de dessin sans avoir à définir la moindre propriété. Ces événements ont des noms de la forme OnCustomDraw ou OnAdvancedCustomDraw.
D'autres contrôles nécessitent l'initialisation d'une propriété avant de recevoir les événements de dessin personnalisé. Les boîtes liste, les boîtes à options, les en-têtes et les barres d'état ont une propriété appelée Style. La propriété Style détermine si le contrôle utilise le dessin par défaut (appelé style "standard") ou bien le dessin effectué par le propriétaire. Les grilles utilisent une propriété appelée DefaultDrawing qui permet d'activer ou de désactiver le dessin par défaut. Les vues listes et les contrôles onglets ont une propriété appelée OwnerDraw qui active ou désactive le dessin par défaut.
Pour les boîtes liste et les boîtes à options, il y a plusieurs styles dessinés par le propriétaire, appelés fixed et variable, comme décrit dans le tableau suivant. Les autres contrôles sont toujours "fixes" bien que la taille de l'élément contenant du texte soit variable, la taille de chaque élément est fixée avant le dessin du contrôle.
Styles fixes et variables dessinés par le propriétaire :
Style dessiné par le propriétaire | Signification | Exemples |
---|---|---|
Fixe |
Chaque élément est de la même hauteur, déterminée par la propriété ItemHeight. |
lbOwnerDrawFixed, csOwnerDrawFixed |
Variable |
Chaque élément peut avoir une hauteur différente qui dépend des données au moment de l'exécution. |
lbOwnerDrawVariable, csOwnerDrawVariable |