Erst einmal danke für die Mühe!
Ich habe den Fehler korrigiert, leider wurde es immer noch nicht besser. An dem Bild konnte es nicht liegen, denn wenn ich einfach mit dem Rectangle-Befehl etwas auf die Canvas zeichnen wollte, ging das auch nicht.
Ich habe das Problem dann nach einigem Recherchieren so gelöst:
Delphi-Quellcode:
procedure TForm1.StringGrid1DrawCell(Sender: TObject; aCol, aRow: Integer;
aRect: TRect; aState: TGridDrawState);
var x,y:integer;
begin
//https://www.delphi-treff.de/tipps-tricks/komponenten/tstringgrid/bitmap-in-ein-stringgrid-zeichnen/
for x:=0 to 8 do for y:=0 to 8 do
begin
if StringGrid1.Cells[x,y]='M' then
begin
StringGrid1.Canvas.StretchDraw(StringGrid1.CellRect(x,y),Image1.Picture.Bitmap);
end;
end;
end;
Das habe ich dann folgendermaßen aufgerufen:
StringGrid1.Invalidate;
Und siehe da: Es funktioniert!