Surbrillance Listbox [Résolu]

SpringOne 6 Messages postés mercredi 10 novembre 2004Date d'inscription 4 février 2007 Dernière intervention - 26 juin 2006 à 21:55 - Dernière réponse : ThWilliam 424 Messages postés mardi 3 janvier 2006Date d'inscription 26 novembre 2013 Dernière intervention
- 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
ThWilliam 424 Messages postés mardi 3 janvier 2006Date d'inscription 26 novembre 2013 Dernière intervention - 27 juin 2006 à 13:25
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

Merci ThWilliam 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 120 internautes 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.