在下面的例子中,改一下 if 语句就行了:
在StringGrid 的 OnDrawCell事件中处理:
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
var
b:TBitmap;
begin
b:=TBitmap.Create;
b.LoadFromFile('c:/windows/circles.bmp');
if (gdFixed in state) then
begin
stringgrid1.canvas.Draw(rect.left,rect.top,b);//画图只要这一行。
stringgrid1.font.color:=clWhite;
stringgrid1.font.size:=12;
stringgrid1.canvas.brush.Style :=bsClear;
stringgrid1.canvas.textout(rect.left+2,rect.top+2,'写的字');
end;
b.free;
end;
注意连接 OnDrawCell事件。