-1

KeyEventListener を作成しようとしていますが、何も出力されません。私はすでにメインクラスを持っています。「登録」する必要がありますか?

    package client;

    import java.awt.event.KeyEvent;
    import java.awt.event.KeyListener;

    public class KeyEventListener implements KeyListener
    {

        @Override
        public void keyPressed(KeyEvent arg0)
        {       
            System.out.print("HI1");        
        }

        @Override
        public void keyReleased(KeyEvent arg0)
        {       
            System.out.print("HI2");        
        }

        @Override
        public void keyTyped(KeyEvent arg0)
        {       
            System.out.print("HI3");        
        }   
    }
4

1 に答える 1

2
  • AWT/Swing コンポーネントは、ウィンドウ内でフォーカス可能またはフォーカス所有者でなければなりません。そうでない場合は、キー イベントに反応せず、トップレベル コンテナーも同様です。

  • 重要な理由なしに KeyListener を使用しないでください。たとえば、3 つ以上のキーを同時に押すなどです。

  • KeyListener は Swing JComponents 用に指定されていないか、KeyBindings と比較していくつかの副作用を引き起こしたため、Swing は代わりに KeyBindings を使用します。

  • 株式会社モアインフォメーション Oracle チュートリアルの実際のコード例。追加の詳細または詳細な説明については、こちらを参照してください。

  • より良いヘルプのために、SSCCE、短い、実行可能、コンパイル可能をすぐに投稿してください

于 2013-07-17T17:26:33.623 に答える