我已经将 ENTER 键添加到默认的 FocusTraversalKeys 中......
private void focus() {
    Set forwardKeys = getFocusTraversalKeys(KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS);
    Set newForwardKeys = new java.util.HashSet(forwardKeys);
    newForwardKeys.add(KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, 0));
    setFocusTraversalKeys(KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS, newForwardKeys);
}
我有一个使用焦点的产品信息表单,但是当涉及到保存按钮时,我想单击按钮而不是焦点转到下一个组件。
我在按钮上添加了一个 KeyPressed 和 KeyReleased 侦听器,然后尝试了这个......
private void saveButtonKeyPressed(java.awt.event.KeyEvent evt) {                                      
    if (evt.getKeyCode() == java.awt.event.KeyEvent.VK_ENTER) {
        evt.consume();
        saveButton.doClick();
    }
}  
同样的方法适用于我的文本区域但代码不执行 CLICK 而是将焦点放在下一个组件上,该组件也是一个按钮。
请提出一些可以帮助我达到所需结果的建议。在所用表格的图像下方找到。