var
CellString:string;
begin
if ARow<Stringgrid1.FixedRows then //字体居中,抬头部分居中
begin
CellString:=Stringgrid1.Cells[ACol,ARow];
Stringgrid1.Canvas.TextRect(rect,rect.Left+(rect.Right-rect.Left-stringgrid1.Canvas.TextWidth(CellString)) div 2,rect.Top+(rect.Bottom-rect.Top-Stringgrid1.Canvas.TextHeight(CellString)) div 2,CellString);
end;
var
Str: String;
R: TRect;
begin
with StringGrid1 do
begin
Canvas.FillRect(Rect);
Str := Cells[ACol,ARow];
R := Rect;
DrawText(Canvas.Handle,PChar(Str),Length(Str),r,DT_CENTER or DT_SINGLELINE or DT_VCENTER); /// 字体居中,全部居中
end;
CellString:string;
begin
if ARow<Stringgrid1.FixedRows then //字体居中,抬头部分居中
begin
CellString:=Stringgrid1.Cells[ACol,ARow];
Stringgrid1.Canvas.TextRect(rect,rect.Left+(rect.Right-rect.Left-stringgrid1.Canvas.TextWidth(CellString)) div 2,rect.Top+(rect.Bottom-rect.Top-Stringgrid1.Canvas.TextHeight(CellString)) div 2,CellString);
end;
var
Str: String;
R: TRect;
begin
with StringGrid1 do
begin
Canvas.FillRect(Rect);
Str := Cells[ACol,ARow];
R := Rect;
DrawText(Canvas.Handle,PChar(Str),Length(Str),r,DT_CENTER or DT_SINGLELINE or DT_VCENTER); /// 字体居中,全部居中
end;