Program ten będzie działać dobrze ...
setRepeats(boolean flag)
funkcja służy do ustawiania wywołać function(actionPerformed)
wielokrotnie lub tylko jeden raz, jeśli
timer.setRepeats(false) == timer
wywołuje metodę actionperformed tylko jeden raz wywołując metodę actionPerformed wielokrotnie na podstawie określonego czasu
Swing Zegar Pracuj
- wykonać zadanie jeden raz
- zrobić czas zadania powtarzane
kroki, aby stworzyć czasomierz Swing
- stworzyć ActionListener
- utworzyć konstruktor zegara następnie przekazać czasu i ActionListener w tym
- realizacji funkcji
actionPerformed()
w którym zrobić swoje zadanie
- użytkowania
timer.start()
do uruchomienia zadania między czasie określonym w konstruktorze timera, użyj timer.stop()
do zatrzymania zadania
Przykład:
ActionListener al=new ActionListener(
public void actionPerformed(ActionEvent ae)
{
//do your task
if(work done)
timer.stop();//stop the task after do the work
}
);
Timer timer=new Timer(1000,al);//create the timer which calls the actionperformed method for every 1000 millisecond(1 second=1000 millisecond)
timer.start();//start the task
prawda . Nigdy nie próbowałem timera bez GUI. – akarnokd
Dzięki, znalazłem mój rejestrator problemów został zainicjowany po uruchomieniu tego kodu, dlatego nigdy nie widziałem wiadomości testowych. zmiana logger z println pomógł. –
IIRC, nie powinieneś używać javax.swing.Timer z EDT. –