Salut à tous
j'ai un petit problème de couleur sur Listbox
j'ai une variable "i" entier
et je veux si (i=0) la première ligne de listbox sera en rouge
et si (i=1) la deuxième ligne de listbox sera en rouge .... et
j'ai essayé ce code normalement ça marche mais...
le problème est qu'il se rafraîchit pas pour changer les couleurs
il change seulement la première ligne malgré que la variable i se change
il manque quelque chose !!!:
Remarque : la variable i est déclarée en début de form
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState); begin with(Control as TListBox).Canvas do // Le dessin se fait sur le canevas du contrôle, pas dans la fiche begin if Index=i then Brush.Color:=clRed ; FillRect(Rect); // Efface le rectangle // Dessin du texte TextOut(Rect.Left,Rect.Top,(Control as TListBox).Items[Index]);//affiche le texte end; end;
Merci d'avance
Partager