2015-07-13 109 views
0

我有一個實現KeyListener的KeyHandler類。所有按鍵都在工作,除了左側和右側箭頭按鍵,按下按鍵但沒有按下按鍵(上下箭頭起作用,與其他所有按鍵一樣)。關鍵偵聽器被添加到JFrame上的Canvas。Java KeyListener的keyReleased沒有調用左右箭頭鍵

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) {} 

} 

是否有這種行爲的原因?

回答

1

從片段的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定義。它似乎是依賴於系統的。

相關問題