Здравств, вот пробовал сначало делать таймер из java.util но там мне не понравилось, что нету дефолтных старт, стоп. Вот такое у меня получилось. Скажите пожалуйста, не сильно ли такой таймер будет грузить приложение? Точнее 3 таких таймера, один общий, а два для учета времени каждого из игроков.
| Код | package chess.util;
import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.text.NumberFormat;
import javax.swing.Timer;
import chess.local.ChessGUILocal; import chess.network.ChessGUINetwork;
public class ChessTimer {
private int miliseconds = 3590000; private NumberFormat format;
private Timer chessTimer;
private ChessGUILocal chessGUILocal; private ChessGUINetwork chessGUINetwork;
public ChessTimer(ChessGUILocal chessGUILocal) { this.chessGUILocal = chessGUILocal; }
public ChessTimer(ChessGUINetwork chessGUINetwork) { this.chessGUINetwork = chessGUINetwork; }
public void timerStart() { ActionListener taskPerformer = new ActionListener() {
@Override public void actionPerformed(ActionEvent e) { if (chessGUILocal != null) { chessGUILocal .getChessTotalTimerLabel() .setText( ((miliseconds / 3600000) + ":" + ((miliseconds % 3600000) / 60000) + ":" + ((miliseconds % 60000) / 1000))); miliseconds += 1000; } else { // TODO ChessGUINetwork parametr } } }; chessTimer = new Timer(1000, taskPerformer); chessTimer.start(); } public void timerStop(){ chessTimer.stop(); }
}
|
Это пока тестовый вариант.
Спасибо |