1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
|
procedure TForm.DBGridDrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
var
tmp : TBitmap;
stream : TMemoryStream;
begin
if( Column.Field.IsBlob ) then
try
stream := TMemoryStream.Create();
TGraphicField( Column.Field ).SaveToStream( stream );
stream.SetSize( stream.Size - int64(8) );
stream.Seek( int64(8), soFromBeginning );
tmp := TBitmap.Create();
tmp.LoadFromStream( stream );
DBGrid.Canvas.CopyRect( Rect, tmp.Canvas , tmp.Canvas.ClipRect )
finally
tmp.Free;
stream.Free;
end
else
DBGrid.DefaultDrawDataCell(Rect, Column.Field,State);
end; |
Partager