这个问题以前提过,找个解决办法帮你踢。。。。
procedure TDataGrid1.DrawColumCell(const Rect: TRect; DataCol: integer;
Colum: TColum; State: TGridDrawState);
var
bmp: TBitmap;
OutRect: TRect;
begin
with DataGrid1 do
begin
Canvas.FillRect(Rect);
OutRect := Rect;
InflateRect(OutRect, -2, -2);
if Colum.Field is TGraphicField then
begin
bmp := TBitmap.Create;
try
bmp.Assign(Colum.Field);
Canvas.StretchDraw(OutRect, Bmp);
finally
bmp.Free;
end;
end
else if Colum.Field is TMemoField then
begin
DrawText(Canvas.Handle, Pchar(Colum.Field.AsString),
Length(Colum.Field.AsString), OutRect, dt_WordBreak or dt_NoPrefix);
end
else
DrawText(Canvas.Handle, Pchar(Colum.Field.DisplayText),
Length(Colum.Field.DisplayText),
OutRect, dt_WordBreak or dt_NoPrefix);
end;
end;