clear JPanel before repainting

maxe

Mitglied
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
Graphics2D leinwand = (Graphics2D) jPanel1.getGraphics();
//Ich möchte, dass die vorheriege Linie bei jedem klick des Buttons verschwindet

Random rand = new Random();
int x1, y1, x2, y2;
x1 = rand.nextInt(200);
y1 = rand.nextInt(200);
x2 = rand.nextInt(200);
y2 = rand.nextInt(200);
leinwand.drawLine(x1, y1, x2, y2);

}
 
In der Regel sollte man nie so direkt auf ein Control malen. Malen sollte immer in den jeweiligen paint bzw. paintComponent Methoden erfolgen.

Dann kannst Du es so aufbauen, dass Du eine Datenstruktur vorhältst, die alle notwendigen Informationen enthält. Beim Malen werden die Daten dann genutzt. Und immer, wenn Du die Daten geändert hast kannst Du repaint aufrufen damit es neu gemalt wird.
 

Neue Themen


Zurück
Oben