1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
var texte : string;
l : Integer;
begin
with StringGrid1.Canvas do
begin
if ACol=2 then
begin
FillRect(Rect);
texte:=StringGrid1.Cells[Acol,ARow];
l:=Length(texte);
if Odd(ARow) then DrawText(Handle,PChar(texte),l,Rect,DT_LEFT OR DT_VCENTER)
else DrawText(Handle,PChar(texte),l,Rect,DT_RIGHT OR DT_RTLREADING OR DT_VCENTER);
// il y a plus élégant avec un IfThen
// DrawText(Handle,PChar(texte),l,Rect,IfThen(Odd(ARow),DT_LEFT OR DT_VCENTER,DT_RIGHT OR DT_VCENTER OR DT_RTLREADING));
end;
end;
end; |
Partager