java - 添加 Enter 键作为 JButton 加速器

标签 java swing

我正在使用简单的 GUI 构建简单的聊天应用程序,但在将 Enter 键分配给“发送”按钮时遇到问题。现在按 Alt+Enter 是非常不切实际的。

public void buildInterface() {
   //some other components
    btnSend = new JButton("Send");
    btnExit = new JButton("Exit");
    btnSearch=new JButton("Search");
    btnSend.setMnemonic(KeyEvent.VK_ENTER); 

     JPanel box=new JPanel();
     add(box, BorderLayout.SOUTH);
     box.add(tfInput);
     box.add(btnSend);
     box.add(btnExit);
     box.add(btnSearch);
}

最佳答案

当按钮获得焦点时,在大多数外观和感觉下,Enter 将激活该按钮。

但是,您可以指定一个按钮作为窗口的“默认”按钮,按下 Enter 键时就会激活该按钮,只要焦点组件不使用它即可。

参见How to Use Root PanesJRootPane#setDefaultButton了解更多详情

关于java - 添加 Enter 键作为 JButton 加速器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27458635/

相关文章:

java - Android 收集和发送数据

java - 使用 Java 更新数组 MongoDB 中的元素

java - 检测 JSpinner 按钮事件

java - 为 KeyStroke 设置多个掩码

java - 如何确保在所有子类中都使用一个变量?

java - 二维数组的深度优先搜索

java - 从 JPanel 获取选定的组件

java - 游戏循环完全卡住了我的程序

java - quartz : run task once a day, 无重复间隔

java - JTable:如何避免重复行和聚合项目数量