Comment avec le composant CheckLisBox avoir une couleur differente a chaque nouveau checkbox(couleur defini par l'utilisateur)
(la propriete "font" met la meme couleur a touts les checkbox)....![]()
Comment avec le composant CheckLisBox avoir une couleur differente a chaque nouveau checkbox(couleur defini par l'utilisateur)
(la propriete "font" met la meme couleur a touts les checkbox)....![]()
Comme d'habitude, il faut utiliser OnDrawItem. Il y a un exemple pour un listBox normal deux lignes au dessus :
http://www.developpez.net/forums/viewtopic.php?t=89916
Je viens de me rendre compte d'un probleme: je ne peut pas utiliser la propriete "checked" du CheckBox(pour l'avoir coché) sinon les CheckBox existant reprennent tous la meme couleur voici mon code:
Quelqu'un à une idée??? .........
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
17
18
19
20
21
22
23
24
25
26
27
28
29 procedure TForm1.FormCreate(Sender: TObject); begin CheckListBox1.Style := lbOwnerDrawFixed; end; procedure TForm1.CheckListBox1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState); begin with Control as TCheckListBox do begin canvas.FillRect(Rect); canvas.Font.Color := TColor(items.Objects[Index]); canvas.TextOut(Rect.Left+2,Rect.Top, Items[Index]); end; end; procedure TForm1.Button1Click(Sender: TObject); var PlanningName: String; PlanningColor: TColor; begin planningcolor := clblack; InputQuery('A Faire', 'Entrez un nom pour votre planning', PlanningName); if ColorDialog1.Execute then PlanningColor := ColorDialog1.Color; CheckListBox1.Items.AddObject(PlanningName, Pointer(PlanningColor)); CheckListBox1.Checked[CheckListBox1.Count - 1] := true; //probleme ici !!!!!! end;![]()
Je me pose une question: pourquoi le probleme de la propriete "checked" perciste chez moi alors qu' a mon ecole il n'existe pas(le probleme)
(j'utilise delphi7 et windows 98 se, al'ecole delphi7 et windows xp)....![]()
Bizarre en effet ...
Tu as essayé de remplacer 'Pointer' par TObject à tout hazard ?
Phenomene paranormale: le code ci dessus c'est mis à fonctionner normalement entre deux compilations et cela sans aucune modification, je n'y comprend rien...........![]()
Partager