procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState); var s: String; R: TRect; begin with StringGrid1 do begin S := Cells[ACol,ARow]; R := Rect; DrawText(Canvas.Handle,PChar(s),Length(s),r,DT_CENTER or DT_SINGLELINE or DT_VCENTER); //文字居中 end; end;
漏了一句,不好意思procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState); var s: String; R: TRect; begin with StringGrid1 do begin Canvas.FillRect(Rect); S := Cells[ACol,ARow]; R := Rect; DrawText(Canvas.Handle,PChar(s),Length(s),r,DT_CENTER or DT_SINGLELINE or DT_VCENTER); //文字居中 end; end;
Rect: TRect; State: TGridDrawState);
var
s: String;
R: TRect;
begin
with StringGrid1 do
begin
S := Cells[ACol,ARow];
R := Rect;
DrawText(Canvas.Handle,PChar(s),Length(s),r,DT_CENTER or DT_SINGLELINE or DT_VCENTER); //文字居中
end;
end;
Rect: TRect; State: TGridDrawState);
var
s: String;
R: TRect;
begin
with StringGrid1 do
begin
Canvas.FillRect(Rect);
S := Cells[ACol,ARow];
R := Rect;
DrawText(Canvas.Handle,PChar(s),Length(s),r,DT_CENTER or DT_SINGLELINE or DT_VCENTER); //文字居中
end;
end;
不过我在创建窗体时绘画这个stringgrid,标题出现了重影,就是说又把原来的标题重写了一遍
怎么解决呢?