[Back to DELPHI SWAG index] [Back to Main SWAG index] [Original]
Here's how:
procedure TForm1.StringGrid1DrawCell(Sender: TObject; Col, Row: Integer;
Rect: TRect; State: TGridDrawState);
var
TempPString:Array [0..255] of char;
begin
If (gdFixed in State){or (gdSelected in State)} then exit;
StringGrid1.Canvas.Brush.Style:=bsSolid;
{You could add some color here, if desired:}
Case Col of
1: StringGrid1.Canvas.Brush.Color:=clRed;
2: StringGrid1.Canvas.Brush.Color:=clWhite;
3: StringGrid1.Canvas.Brush.Color:=clBlue;
end;
{Erase data}
StringGrid1.Canvas.FillRect(Rect);
{Get text in a PChar string}
StrPCopy(TempPString,StringGrid1.Cells[Col,Row]);
{DrawText--see other options in Windows API help;
Change the DT_LEFT to DT_RIGHT for right justified txt!}
DrawText(StringGrid1.Canvas.Handle,TempPString,-1,Rect,DT_LEFT);
end;
procedure TForm1.FormShow(Sender: TObject);
var
I, J, K : Integer;
begin
with StringGrid1 do
begin
for I := 1 to ColCount - 1 do
for J:= 1 to RowCount - 1 do
begin
K := K + 1;
Cells[I,J] := IntToStr(K);
end;
end;
end;
[Back to DELPHI SWAG index] [Back to Main SWAG index] [Original]