Hans: Zeichnen wenns kein Applet ist

Beitrag lesen

Hi !

Ein Frame hat auch eine paint()-Methode. Schau mal nach einem Beispiel im Internet nach. Am Besten, Du erzeugst ein Image, auf dem Du dann rummalst. Das hat den Vorteil, dass Du immer wieder eine Kopie vom Image machst, und somit dem User eine "Undo"-Funktion zur Verfügung stellst. Desweiteren kannst Du das Image bequem mit ImageIO.write(BufferedImage,"PNG",file) (genaue Syntax bitte nachlesen) speichern und so ähnlich wieder lesen. Der Methodenname soll jetzt erst mal als Aufpunkt dienen, von dem Du aus weiter suchen kannst.

Bei meinem Malprogramm war es so: Als ich erst einmal die ersten Punkte setzen konnte, kamen mir zig Ideen, was ich noch machen könnte. Z.B. Über Image-Buffering kannst Du Objekte über das Bild bewegen, ohne daß das Bild übermalt wird
1.) Image1 (Maloberfläche) kopieren -> Image2
2.) auf Image1 das Objekt malen
3.) Wenn Maus mit dem Objekt bewegt wird, Image2 auf Image1 kopieren
4.) Objekt an aktueller Mausposition auf Image1 malen

Das solange wiederholen, bis der User den Mausbutton drückt, dann Objekt endgültig auf Image1 schreiben. Bei Undo -> Image2 nach Image1 kopieren.

Gruß

Hans da Vinci ;-)