Mega Code Archive

 
Categories / Delphi / Graphic
 

How to show a Graphic in DBGrid Cell

Title: How to show a Graphic in DBGrid Cell // The code : procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); var bmpImage: tBitmap; intX, intY: Integer; begin if DataSource1.DataSet.RecNo 0 then begin if column.FieldName = 'COUNTRY' then with DBGrid1.Canvas do begin fillRect(rect); bmpImage := tBitmap.Create; try if DBGrid1.DataSource.DataSet.FieldByName('COUNTRY').AsInteger = 0 then bmpImage.Assign(image0.Picture.Bitmap); if DBGrid1.DataSource.DataSet.FieldByName('COUNTRY').AsInteger = 1 then bmpImage.Assign(image1.Picture.Bitmap); intX := ((rect.Right - rect.Left) div 2) - (bmpImage.Width div 2); intY := ((rect.Bottom - rect.Top) div 2) - (bmpImage.Height div 2); draw(rect.Left + intX, rect.Top + intY, bmpImage); finally bmpimage.Free; end; end; end; end;