오늘 게임에서 키보드 입력을 항상 0보다 높게 설정했습니다. 그러나 어떤 이유로 키보드를 클릭하고 다시 클릭 할 때마다 키가 다시 입력됩니다. 입력이 작동을 멈 춥니 다. 여기에 내 keyPressed
및 keyReleased
방법에있는 것입니다 :윈도우가 초점이 맞춰지면 Java 입력이 작동을 멈 춥니 다.
public void keyPressed(KeyEvent e) {
int code = e.getKeyCode();
switch (code) {
case KeyEvent.VK_W:
keys[0] = true;
break;
case KeyEvent.VK_D:
keys[1] = true;
break;
case KeyEvent.VK_S:
keys[2] = true;
break;
case KeyEvent.VK_A:
keys[3] = true;
break;
}
}
public void keyReleased(KeyEvent e) {
int code = e.getKeyCode();
switch (code) {
case KeyEvent.VK_W:
keys[0] = false;
break;
case KeyEvent.VK_D:
keys[1] = false;
break;
case KeyEvent.VK_S:
keys[2] = false;
break;
case KeyEvent.VK_A:
keys[3] = false;
break;
}
}
그다지 진행되지 않습니다. 이 방법들에 중단 점을 설정 했습니까? 이것을 디버깅하기 위해 지금까지 무엇을 했습니까? –
창 포커스 이벤트에 대한 응답으로 처리를 수행합니까? (좀 더 구체적으로, 초점이 맞지 않는 이벤트에 대한 응답으로) –
@ 짐 가르온 (JimGarrison) 나는 이것을 행운으로 몇 시간 동안 연구했다. 이것은 전에 결코 일어나지 않았다. –