Wie kann man in Java zwischen jeder Wiederholung einer For -Schleife eine kurze Pause machen?
Hi, ich bin absoluter Java Anfänger und frage mich, wie man zwischen jeder Wiederholung einer For-Schleife eine kleine Pause einbauen kann.
Mein Ziel ist es, dass, wenn man auf einen Button klickt, ein Label jede Sekunde um 10 nach oben wandert.
Ich habe es schon mit thread versucht, jedoch ist die Pause dann viel zu lang, da sie Thread Pause mal der Anzahl der Wiederholungen lang ist.
Danke schonmal im Voraus :-D
2 Antworten
Da du von Label und Button redest, ist wohl anzunehmen, dass du auch mit einem GUI-Toolkit arbeitest. Wenn es sich hierbei um Swing handelt, wäre ein Timer (aus dem javax.swing-Package) die richtige Wahl. Dieser ersetzt die Schleife.
var timer = new Timer(1000, event -> {
// move label ...
});
timer.start();
Wenn du ein anderes Toolkit verwendest, schau erst, welche Timer-Möglichkeiten dieses bietet.
Klingt nach einem guten Job für den ScheduledExecutorService.
Du würdest halt die for-Schleife damit verbinden oder nur scheduleAtFixedDelay verwenden. https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/ScheduledExecutorService.html
Weißt du, wie man damit umgeht?
Danke ;-D
Was macht der genau? Und wie baue ich den in meine For schleife ein?