Witam mam niewielki problem, który urasta do ogromnej rangi. Stworzyłem sobie gre, w niej gdy wcisnę strzałkę statek zatrzymuje się na chwile a następnie zaczyna się poruszać. Problem polega na czasie "oczekiwania" miedzy okresem kiedy java wczyta ze nacisnąłeś i kiedy uzna ze dalej jest wciśnięty przycisk. Aby pokazać mój problem zamieszczam kod
public class KeyTest extends JFrame implements KeyListener {
long start;
long end;
public KeyTest() {
super("KeyListener Test");
setPreferredSize(new Dimension(300, 100));
addKeyListener(this);
start = System.nanoTime();;
pack();
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
@Override
public void keyPressed(KeyEvent evt) {
end = System.nanoTime();;
char c = evt.getKeyChar();
System.out.print(c+" ");
System.out.println(end-start);
}
@Override
public void keyReleased(KeyEvent evt) {
}
@Override
public void keyTyped(KeyEvent evt) {
}
}
kiedy nacisnę przycisk "s" w wyniku dostaje
s 810407913
s 1312851842
s 1344314575
s 1377971356
s 1409969550
s 1441512603
s 1475051136
s 1507228263
miedzy pierwszym i drugim "s" jest znacząca różnica czasu i nie wiem jak sobie poradzić z tym drobnym a zarazem denerwującym problemem. Jeżeli temat był na forum to przepraszam bo nie znalazłem.