[英]How to catch Enter key and change event to Tab in Java
我有一个带有多个jtextfield的swing应用程序。 如何替换回车键的功能,当您按回车键时,它将像tab键一样转移到下一个可聚焦组件上? 我不想在每个jtextfield上放置一个keylistener。
您正在寻找Container.setFocusTraversalKeys
:
Container root = ...
// pressed TAB, control pressed TAB
Set<AWTKeyStroke> defaultKeys = root.getFocusTraversalKeys(KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS);
// since defaultKeys is unmodifiable
Set<AWTKeyStroke> newKeys = new HashSet<>(defaultKeys);
newKeys.add(KeyStroke.getKeyStroke("pressed ENTER"));
root.setFocusTraversalKeys(KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS, newKeys);
有关更多信息,请查看Focus Subsystem教程 。
您可以致电:
KeyboardFocusManager manager = KeyboardFocusManager.getCurrentKeyboardFocusManager();
manager.focusNextComponent();
但是您将必须在所有JTextField中注册一个ActionListener。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.