StringGrid1DrawCell formatage texte
bonjour
j'emploi StringGrid1DrawCell pour formatter mes colonnes en fonction des données
mais comment éviter de faire " begin end else begin end ect" voir exemple ci dessous
Code:
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 30 31 32 33 34 35 36 37
|
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
begin
With Sender As TStringGrid Do With Canvas Do
Begin
If gdFixed in State
Then Brush.Color := clSkyBlue
Else If gdSelected In State
Then Brush.Color := clNavy
Else Brush.Color := clWhite;
FillRect(Rect);
If gdSelected In State Then
SetTextColor(Canvas.Handle,clWhite)
Else SetTextColor(Canvas.Handle,clBlue);
if (Acol=0) and (arow=1) then begin
font.Size:=16;
SetTextColor(Canvas.Handle,clblue);
end
else
if (Acol=1) and (arow>0) then begin
font.Size:=14;
SetTextColor(Canvas.Handle,clred);
end
else
if (Acol=2) and (arow>0) then begin
font.Size:=12;
SetTextColor(Canvas.Handle,clgreen);
end
else
font.Size:=8;
DrawText(Canvas.Handle, PChar(Cells[ACol,ARow]), -1, Rect ,
DT_CENTER or DT_NOPREFIX or DT_VCENTER or DT_SINGLELINE );
end; |