Zitat von
bitsetter:
Ändere deinen Code mal so ab:
Hier die beiden Karten:
Delphi-Quellcode:
procedure tform1. paintbox2paint(sender:TObject);
begin
Bitmap2 := TBitmap.Create;
Bitmap2.LoadFromFile('laenderbunt.bmp');
//paintbox2.Canvas.Draw(0,0,Bitmap2);
//bitmap2.free; NICHT FREE!!
Bitmap1 := TBitmap.Create;
Bitmap1.LoadFromFile('laender.bmp');
paintbox2.Canvas.Draw(0,0,Bitmap1);
bitmap1.free;
end;
Der arme Speicher!
Wenn jedesmal, wenn die Paintbox neu gezeicnet wird, ein neues Bitmap erzeugt und nicht wieder freigegeben wird, dann gute nacht!
Du solltest dir Bitmap1 und Bitmap2 global erstellen und im OnCreate der Form laden (laender.bmp und laenderbunt.bmp)
Im OnPaint malst du dann nur Bitmap1 ohne nochmal irgendwas zu erzeugen. Das MouseMove kannst du vom Viertelnibblesetter übernehmen