Hallo!
Ich möchte mit Lazarus ein Minesweeper-Spiel programmieren. Dazu habe ich ein 9x9-StringGrid erstellt und in jede Zelle, in der eine Mine sein soll, ein 'M' geschrieben.
Danach wollte ich mit dem folgenden Programmcode in jede Zelle, in der ein 'M' steht, das Bild einer Mine mit dem StretchDraw-Befehl platzieren:
Delphi-Quellcode:
bild:=TBitmap.create;
bild.LoadFromFile(ExtractFilePath(ParamStr(0))+'Mine.bmp');
for x:=0 to 8 do for y:=0 to 8 do if StringGrid1.cells[x,y]='M' then StringGrid1.Canvas.StretchDraw(StringGrid1.CellRect(x,y),bild);
bild.free;
Wenn ich das Programm starte und das Spielfeld erstelle, blitzen kurz mal ein paar Minen auf, verschwinden aber sofort wieder.
Was habe ich hier falsch gemacht und wie ist es richtig? Ich bitte um Hilfe. Das gesamte Projekt (außer der exe-Datei) ist im Anhang.
Vielen Dank an alle!