2011-12-29 106 views
0

我有一个类型游戏,你必须在时间限制用完之前输入尽可能快的单词,但是每当你输入一个单词时,你必须移动鼠标并点击回车并点击回到用户输入键入下一个单词。我只是希望能否使用“keyCode.VK_Enter”来发布JButton调用的Action命令。设置JButton的键盘快捷键?

我的一些代码片段:

回车键,用户输入和输出:

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); 

actionPerformed方法获取输入按钮的动作命令:

if(userInput.getText().equals(userOutput.getText())){ 
      userInput.setText(""); 
      score += 100; 

回答

5

为什么不您只需将一个actionlistener添加到JTextField中(当用户输入时将会触发它)。

userInput.addActionListener(new ActionListener() { 

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

}); 
+2

+1,是的,ActionListener可以被按钮和文本字段共享。 – camickr 2011-12-29 21:03:40

+0

哇!非常感谢,我不知道ActionCommands可以共享lol。谢谢! – 2011-12-29 21:12:01

+0

@AmundeepSingh,那么也许你应该接受答案? – camickr 2011-12-29 22:41:36