Tag: onfocus

Java密钥绑定不起作用

我试图在JPanel上用Java创建键绑定。 当我按下“w”按钮时,我想要执行某个动作。 我按照Java教程进行绑定,但actionPerformed方法不执行(即没有文本打印出来)。 以下是我的测试GUI的全部代码,相关部分突出显示: import java.awt.BorderLayout; import java.awt.event.ActionEvent; import javax.swing.AbstractAction; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.KeyStroke; @SuppressWarnings(“serial”) public class Test extends JFrame{ private JPanel panel; public Test(){ super(); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setSize(500,500); setLayout(new BorderLayout()); setVisible(true); panel = new JPanel(); // HERE ARE THE KEY BINDINGS panel.getInputMap().put(KeyStroke.getKeyStroke(‘w’),”forward”); panel.getActionMap().put(“forward”, new AbstractAction(){ @Override public void actionPerformed(ActionEvent e){ System.out.println(“test”); } }); […]