更改默认“标签”操作(transferfocus)

时间:2012-05-01 17:41:47

标签: java swing focus jtextfield

在Java SWING中,“标签key全局转移所有focus之间的components。是否有可能以某种方式修改此“默认”行为?

因此,不要让“ Tab key更改focus,而是希望“ Enter ”键执行此操作。

提前致谢!

2 个答案:

答案 0 :(得分:1)

更改焦点TraversalSystem需要做很多工作。我建议在面板上添加一个actionListener,它保存所有的swing组件并检查按键是否输入只需将焦点更改为具有tabFocus变量+ 1的下一个元素(需要将组件放在一个数组中)如果适用的话,循环或使用原生的摆动方法。

答案 1 :(得分:1)

我确信通过使用

1)KeyBindings你可以做到这一点非常容易和最安全

2)您可以通过方法Component

在窗口中获取Focus,J / Component Component#getOppositeComponent()

不需要ArraySwingUtilities,默认情况下Z-Order可以执行此操作,但不会支持所有Look and Feels