StringGrid1DrawCell

Résolu
yannba Messages postés 133 Date d'inscription mercredi 4 janvier 2006 Statut Membre Dernière intervention 7 septembre 2010 - 2 févr. 2006 à 23:38
Cirec Messages postés 3833 Date d'inscription vendredi 23 juillet 2004 Statut Modérateur Dernière intervention 18 septembre 2022 - 2 févr. 2006 à 23:59
A partir d'un stringgrid, je fais une couleur alternée :
procedure TForm2.StringGrid1DrawCell(Sender: TObject; Col, Row: Longint;
Rect: TRect; State: TGridDrawState);
begin
if (row mod 2)<>1 then
begin
stringgrid1.canvas.brush.color:=impaire; // ligne impaire
stringgrid1.canvas.FillRect(rect)
end
else
begin
stringgrid1.canvas.brush.color:=paire; // ligne paire
stringgrid1.canvas.FillRect(rect);
end;
end;

A l'aide d'un bouton, je veux initialiser les valeurs paire et impaire :
procedure TForm2.BitBtn2Click(Sender: TObject);
begin
impaire:= $00EBFEFB; // Couleur de la ligne impaire
paire:= $00E7ECCA; // Couleur de la ligne paire
StringGrid1.OnDrawCell:=StringGrid1DrawCell;
end;

Ca marche a condition que je clique sur les cellules du StringGrid. Comment faire de telle sorte que ca devienne automatique ?

1 réponse

Cirec Messages postés 3833 Date d'inscription vendredi 23 juillet 2004 Statut Modérateur Dernière intervention 18 septembre 2022 50
2 févr. 2006 à 23:59
Salut,
Essaye ça
procedure TForm2.BitBtn2Click(Sender: TObject);
begin
impaire:= $00EBFEFB; // Couleur de la ligne impaire
paire:= $00E7ECCA; // Couleur de la ligne paire
StringGrid1.OnDrawCell:=StringGrid1DrawCell;
StringGrid1.Refresh;
end;

@+
Cirec
3