Surbrillance Listbox [Résolu]

Messages postés
6
Date d'inscription
mercredi 10 novembre 2004
Dernière intervention
4 février 2007
- - Dernière réponse : ThWilliam
Messages postés
424
Date d'inscription
mardi 3 janvier 2006
Dernière intervention
26 novembre 2013
- 27 juin 2006 à 13:25
Bonjour tout le monde !

J'aimerai savoir comment changer la couleur de la surbrillance d'un listbox,

Merci d'avance.
Afficher la suite 

Votre réponse

1 réponse

Meilleure réponse
Messages postés
424
Date d'inscription
mardi 3 janvier 2006
Dernière intervention
26 novembre 2013
1
3
Merci
Salut,

Pour ce faire, tu donnes à ton listbox le style :  lbOwnerDrawFixed (hauteur de ligne fixe)  ou lbOwnerDrawVariable.
Tu assignes un événement OnDrawItem dans lequel tu peux dessiner sur le Canvas du ListBox.
Attention : il faut redessiner aussi le texte des Items.

Exemple de code :

procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer;
  Rect: TRect; State: TOwnerDrawState);
begin
   with ListBox1 do
   begin
       Canvas.Font.Assign(Font);
        if odSelected in State then   // si l'item est sélectionné
        begin
           Canvas.Brush.Color:= clAqua; // ta couleur de surbrillance
           Canvas.Font.Color:= clwhite;   // la couleur du texte
        end
       else
           Canvas.Brush.Color:= Color;
       Canvas.FillRect(Rect);
       Canvas.TextOut(Rect.Left + 2, Rect.Top + 1, Items[Index]);
   end;
end;

Le Left + 2 et le Top + 1 : ce n'est qu'un exemple, à toi de choisir les valeurs. Tu peux aussi centrer le texte verticalement en t'aidant de TextHeight...

A +
Thierry

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 98 internautes nous ont dit merci ce mois-ci

Commenter la réponse de ThWilliam

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.