Ich habe einen JFrame mit zwei Tasten. Eine der Schaltflächen beim Klicken bewegt (btnMove) die andere Schaltfläche (Shape) von der aktuellen Position zu einer anderen. Ich verwende einen Thread als Timer zum Zählen in Sekunden, aber jedes Mal, wenn der Zähler inkrementiert, bewegt sich die Schaltfläche zurück in ihre ursprüngliche Position .Java-Repositionierung des Objekts, wenn der Timer inkrementiert
public class FrameTh extends JFrame {
class count extends Thread {
public int p = 0;
public void run() {
for (int i = 1; i < 100; i++) {
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
System.out.println(e);
}
lblCounter.setText("Seconds: " + i);
}
}
}
count t1 = new count();
private void formWindowActivated(java.awt.event.WindowEvent evt) {
t1.start();
}
private void btnMoveActionPerformed(java.awt.event.ActionEvent evt) {
shape.setLocation(23, 44);
}
Vielen Dank für Ihre Antwort sehen, aber nach der JLayeredPane verwenden und den Swing-Timer verwenden, ich habe immer noch die gleichen Problem. – Henry
Haben Sie einen Layout-Manager auf JLayeredPaned angewendet? Die Verwendung von Layout-Manager ist nicht die Verwendung eines Layout-Manager, die andere Möglichkeit ist es, Ihre eigenen zu erstellen – MadProgrammer