Partager via


WM_CTLCOLORSCROLLBAR message

Le message WM_CTLCOLORSCROLLBAR est envoyé à la fenêtre parente d’un contrôle de barre de défilement lorsque le contrôle est sur le point d’être dessiné. En répondant à ce message, la fenêtre parente peut utiliser le handle de contexte d’affichage pour définir la couleur d’arrière-plan du contrôle de barre de défilement.

Une fenêtre reçoit ce message via sa fonction WindowProc.

WM_CTLCOLORSCROLLBAR

    WPARAM wParam
    LPARAM lParam; 

Paramètres

wParam

Gérez le contexte de l’appareil pour le contrôle de barre de défilement.

lParam

Handle jusqu’à la barre de défilement.

Valeur retournée

Si une application traite ce message, elle doit retourner le handle à un pinceau. Le système utilise le pinceau pour peindre l’arrière-plan du contrôle de barre de défilement.

Remarques

Si l’application retourne un pinceau qu’elle a créé (par exemple, à l’aide de la fonction CreateSolidBrush ou CreateBrushIndirect ), l’application doit libérer le pinceau. Si l’application retourne un pinceau système (par exemple, un pinceau récupéré par la fonction GetStockObject ou GetSysColorBrush ), l’application n’a pas besoin de libérer le pinceau.

Par défaut, la fonction DefWindowProc sélectionne les couleurs système par défaut pour le contrôle de barre de défilement.

Le message WM_CTLCOLORSCROLLBAR n’est jamais envoyé entre les threads ; elle est envoyée uniquement dans le même thread.

Si une procédure de boîte de dialogue gère ce message, elle doit convertir la valeur de retour souhaitée en un INT_PTR et retourner la valeur directement. Si la procédure de boîte de dialogue retourne FALSE, la gestion des messages par défaut est effectuée. La valeur DWL_MSGRESULT définie par la fonction SetWindowLong est ignorée.

Le message WM_CTLCOLORSCROLLBAR est utilisé uniquement par les contrôles de barre de défilement enfants. Les barres de défilement attachées à une fenêtre (WS_SCROLL et WS_VSCROLL) ne génèrent pas ce message. Pour personnaliser l’apparence des barres de défilement attachées à une fenêtre, utilisez les fonctions de barre de défilement plate.

Configuration requise

Condition requise Valeur
Client minimal pris en charge
Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge
Windows Server 2003 [applications de bureau uniquement]
En-tête
Winuser.h (include Windows.h)

Voir aussi

Référence

WM_CTLCOLORBTN

WM_CTLCOLOREDIT

WM_CTLCOLORLISTBOX

WM_CTLCOLORSTATIC

Autres ressources

DefWindowProc

RealizePalette

SélectionnerPalette

WM_CTLCOLORDLG