我加了鍵盤輸入到我的比賽方式,我總是這樣,用KeyListener
,但由於某種原因,在我的程序每當我點擊窗口之外,點擊後面的,關鍵輸入只是停止工作。以下是我在我的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我已經研究了幾個小時,沒有運氣。這從來沒有發生過。 –