13

メソッド内で、またはが押されているかKeyTypedどうかを確認するにはどうすればよいですか?BackspaceEsc

4

7 に答える 7

23

KeyListener を適切にアタッチし、その KeyListener に必要なメソッドを実装していると仮定すると、特定のキー押下を検出するには、次のコードを追加するだけです。

public void keyReleased(KeyEvent ke) 
{
    if(ke.getKeyCode() == KeyEvent.VK_BACK_SPACE)
    {  
        //code to execute if backspace is pressed
    }

    if(ke.getKeyCode() == KeyEvent.VK_ESCAPE)
    {
        //code to execute if escape is pressed
    }
}

KeyEvent クラスの javadoc は、次のリンクにあります: KeyEvent javadocs
そこには、Java KeyListeners および KeyEvents を実装するときにキーボード入力を検出するために使用されるすべての Java 仮想キーコードのリストがあります。KeyListeners の詳細については、 How to Write a Key Listener を参照してください。要求どおりに keyTyped メソッドを使用するには、gangqinlaohu の回答を参照してください。

于 2013-03-29T04:55:31.010 に答える
6

http://www.fileformat.info/info/unicode/char/8/index.htm

arg0.getKeyChar()int:(int)arg0.getKeyChar()にキャストされると、バックスペース キーは値 8 になり、Esc キーは値 27 になります。

于 2013-03-28T23:24:45.823 に答える
0

e.getExtendedKeyCode()inを使用することもでき、keyTyped正しく表示されるゼロ以外の値を返します。

于 2016-04-09T15:15:08.397 に答える