Проблема с использованием изображения из списка TImage для рисования глифа в ячейке данных в DBGrid:
Я помещаю изображение «галочки» в формате BMP вместо текста «Готово» в определенной ячейке данных. Это работает, но всегда есть черный цвет в тех частях ячейки, которые не покрыты изображением. Я попытался увеличить размер пикселя изображения BMP, чтобы он соответствовал размеру ячейки, но мне всегда кажется, что размер изображения менялся. При использовании Delphi 10.2 не было проблем с D7?
Испробовали множество комбинаций настройки цвета фона, цветов пера и кисти и т. Д. Вот простой пример одной попытки кода:
procedure TFUpRepWS.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
with Column do begin
if ((FieldName = 'Done') and (Field.AsString = 'x')) then begin
//below shows black outside of check mark image in the cell
ImageList1.Draw(DBGrid1.Canvas,Rect.Left,Rect.Top,0)
end
else DBGrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State);
end;
end;