"Таймер-контроллер"
private long timer_p = 0;// начальное время для таймера
private long timer_f = 0;// конечное время
private long timer_d;// (количество миллисекунд) длительность таймера
// таймер с timer_d - время выполнения метода или команды
public void timer_play (){
if (timer_s == 0) { //если таймер не запущен
timer_s = System.currentTimeMillis();// получаем текущее время милсек
timer_f = timer_s + timer_d; // конечное время
//команда или метод(если есть) по старту
}
if(timer_f<=System.currentTimeMillis()) { //если время вышло
//команда или метод(если есть) по финишу
timer_s=0;// обнуляем счетчик
}
}
____________________________________________________________________________
Использование таймера как boolean
private boolean timer_rech (){
if (timer_s == 0) { //если таймер не запущен
timer_s = System.currentTimeMillis();// получаем текущее время милсек
timer_f = timer_s + timer_d; // конечное время трека
}
if(timer_f<=System.currentTimeMillis()) { //если время звучания меньше текущювремени
timer_s=0;// обнуляем счетчик
return true;
}
else return false;
}
Применение - см видео 13 Как сделать игру на Java
// таймер звука ( для треков запущ. play() и конструктор с timer_d)
public void timer_play (){
if (timer_p == 0) { //если таймер не запущен
timer_p = System.currentTimeMillis();// получаем текущее время милсек
timer_f = timer_p + timer_d; // конечное время трека
}
if(timer_f<=System.currentTimeMillis()) { //если время звучания меньше текущювремени
this.stop();//стоп трек
timer_p=0;// обнуляем счетчик
}
}
______________________________________________________________________________
Таймер - генератор - прикладной код:
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
Timer timer1 = new Timer(1000, new ActionListener() {
public void actionPerformed(ActionEvent e) {
//код который нужно выполнить каждую секунду
health++;
if (health>10)
timer1.stop(); // остановка по условию
}
});
timer1.start(); //запуск таймера
|