Zitat von
Robert Marquart:
Wenn du auf Image1.Canvas malst, dann malt das in Image1.Picture.Bitmap und gleich angezeigt.
a) Du brauchst eine zweite Bitmap.
MyBitmap := TBitmap.Create;
MyBitmap.Assign(Image1.Picture.Bitmap); // das kopiert das ganze Bild aus Image1
b) Nun sich mit den Methoden MyBitmap.Canvas vergnuegen. Das malt auf MyBitmap und ist unsichtbar.
c)
Image1.Picture.Bitmap.Assign(Image1.Picture.MyBitm ap); // das veraenderte Bild ins Image1 zurueckkopieren
MyBitmap.Free; // die jetzt nutzlose Objekt freigeben
Hab deinen Code jetzt mal 1:1 übernommen. In Image1 ist jetzt ein 20*20 Pixel großes komplett rotes Bitmap eingefügt. Warum wird es nach diesem COde nicht blau?
Delphi-Quellcode:
MyMyBitmap := TBitmap.Create;
MyBitmap.Assign(Image1.Picture.Bitmap); // das kopiert das ganze Bild aus Image1
MyBitmap.Canvas.Floodfill(2,2,clblue,fsborder); // <- Das Funktioniert irgendwie wohl nicht.
Image1.Picture.Bitmap.Assign(MyBitmap); // das veraenderte Bild ins Image1 zurueckkopieren
MyBitmap.Free; // die jetzt nutzlose Objekt freigeben
Danke für die Hilfe soweit!!!