![](/img/trans.png)
[英]KeyListener - keyPressed called but KeyReleased not called
[英]Java KeyListener's keyReleased not called for left and right arrow keys
我有一個實現KeyListener的KeyHandler類。 除了向左和向右箭頭鍵注冊為已按下但從不釋放時,所有鍵均起作用(向上和向下箭頭與其他所有鍵一樣起作用)。 關鍵偵聽器將添加到JFrame的Canvas上。
public class KeyHandler implements KeyListener {
public void keyPressed(KeyEvent e) {
System.out.println("Pressed");
}
public void keyReleased(KeyEvent e) {
System.out.println("Released");
}
public void keyTyped(KeyEvent e) {}
}
有這種現象的原因嗎?
Java API的摘錄-Keyevent:
Not all keyboards or systems are capable of generating all virtual key codes. No attempt is made in Java to generate these keys artificially.
因此從Java角度來看,它仍然是行為。 但是,從我的邏輯感覺來看,我也無法給您上下左右箭頭鍵之間的任何區別。 即使我們遵循API定義。 它似乎取決於系統。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.