Java 如何在同一方法中添加按键事件

Java 如何在同一方法中添加按键事件,java,swing,jframe,keylistener,keyevent,Java,Swing,Jframe,Keylistener,Keyevent,我对此代码有问题: CaptachaKey.addKeyListener(new KeyAdapter() { public void KeyPressed(KeyEvent e) { System.out.println("It works!" + e.getKeyCode()); if (e.getKeyCode() == 10) { text =

我对此代码有问题:

 CaptachaKey.addKeyListener(new KeyAdapter()
    {
        public void KeyPressed(KeyEvent e)
        {
            System.out.println("It works!" + e.getKeyCode());
            if (e.getKeyCode() == 10)
            {
                text = CaptachaKey.getText();
                f.setVisible(false);

            }
        }
    });
它不起作用。。。
如何在同一类中添加此侦听器?

而不是使用
KeyListener
使用,例如代码10:

  getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(KeyStroke.getKeyStroke("ENTER"), "doSomething");
  getActionMap().put("doSomething",new AbstractAction() {

        @Override
        public void actionPerformed(ActionEvent arg0) {
            System.out.println("profit");
        }
    });
根据您的代码:

CaptachaKey.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(KeyStroke.getKeyStroke("ENTER"), "doSomething");
CaptachaKey.getActionMap().put("doSomething",new AbstractAction() {

        @Override
        public void actionPerformed(ActionEvent arg0) {
            text = CaptachaKey.getText();
            f.setVisible(false);
        }
    });

当您按下
ENTER
键时,您的代码将被执行。

它是
keyPressed
而不是
keyPressed
。无论如何,对Swing而不是键侦听器使用键绑定。@user2820701要获得更好的帮助,请尽快发布一个简短的、可运行的、可编译的,