procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
var
tempstr:string;
strheight:integer;
Shift: TShiftState;
h,h1,h2:integer;
begin
tempstr:=stringgrid1.Cells[acol,arow];
with stringgrid1.Canvas do
begin
strheight:=textheight(tempstr);
brush.color:=rgb(50,150,192);
fillrect(rect);
pen.color:=rgb(100,192,192);
pen.width:=1;
rectangle(rect);
font.color:=rgb(100,0,200);
font.style:=[fsbold];
textout(rect.left+2,rect.top+(rect.bottom-rect.top-strheight)div 2,tempstr);
drawtext(stringgrid1.Handle,pchar(stringgrid1.Cells[acol,arow]),length(stringgrid1.cells[acol,arow]),rect,dt_singleline and dt_vcenter and dt_center);
end;
if (ss) then
begin
stringgrid1.Canvas.Brush.Color:=clyellow;
stringgrid1.canvas.font.color:=clred;
stringgrid1.Canvas.FillRect(stringgrid1.cellrect(n,m));
stringgrid1.canvas.textout(stringgrid1.cellrect(n,m).left,stringgrid1.cellrect(n,m).top,stringgrid1.cells[n,m]);
drawtext(stringgrid1.Handle,pchar(stringgrid1.Cells[n,m]),length(stringgrid1.cells[n,m]),rect,dt_singleline and dt_vcenter and dt_center);
end;
for h:=1 to rec do
begin
stringgrid1.Canvas.Brush.Color:=clyellow;
stringgrid1.canvas.font.color:=clred;
stringgrid1.Canvas.FillRect(stringgrid1.cellrect(t[h],y[h]));
stringgrid1.canvas.textout(stringgrid1.cellrect(t[h],y[h]).left,stringgrid1.cellrect(t[h],y[h]).top,stringgrid1.cells[t[h],y[h]]);
drawtext(stringgrid1.Handle,pchar(stringgrid1.Cells[t[h],y[h]]),length(stringgrid1.cells[t[h],y[h]]),rect, dt_singleline and dt_vcenter and dt_center);
end;
--------------------next---------------------
阅读(1087) | 评论(0) | 转发(0) |