繁体   English   中英

如何在Java中捕获Enter键并将事件更改为Tab

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM