设置JButton的键盘快捷键?

Amu*_*ngh 0 java swing action keyboard-shortcuts jbutton

我有一个类型游戏,你必须在时间限制用完之前输入尽可能快的单词,但每次键入单词时,你必须移动鼠标并单击回车并单击返回到用户输入输入下一个单词.我只是希望有没有办法使用"keyCode.VK_Enter"来发出一个由JButton调用的Action Command.

我的代码的一些片段:

Enter按钮和用户输入和输出:

enter = new JButton("Enter");
    enter.setFont(serif);  //serif is specified earlier
    enter.setActionCommand("Enter");
    enter.addActionListener(this);
    container.add(enter);

userOutput = new JTextField(50);
    userOutput.setFont(serif);
    container.add(userOutput);
    userOutput.setEditable(false);

userInput = new JTextField(43);
    userInput.setFont(serif);
    container.add(userInput);
    userInput.setEditable(false);
Run Code Online (Sandbox Code Playgroud)

获取enter按钮的action命令的actionPerformed方法:

if(userInput.getText().equals(userOutput.getText())){
            userInput.setText("");
            score += 100;
Run Code Online (Sandbox Code Playgroud)

小智 5

为什么不直接向JTextField添加一个actionlistener(当用户点击进入时会触发).

userInput.addActionListener(new ActionListener() {

    public void actionPerformed(ActionEvent e) {
        // Do something
    }

});
Run Code Online (Sandbox Code Playgroud)

  • +1,是的,ActionListener可以由按钮和文本字段共享. (2认同)