我有两个 Jtables Emplyoee 和 Manager。如果我在 Emplyoee 表上输入,那么焦点应该放在 Manager 表上。我使用了 ChangeSelection,但它不起作用。
问问题
81 次
1 回答
1
我能想到的最简单的解决方案是将键绑定附加到Employee
将焦点移至Manager
查看Key Bindings了解更多详细信息。
在您的操作处理程序中,您需要requestFocusInWindow
使用表的实例进行调用Manager
。
我确实查看了焦点子系统,但这会影响整个焦点根,我觉得这超出了您所要求的范围。
更新
您可以更改焦点遍历键,但这只会将焦点移动到下一个可聚焦组件...
Set forward = new HashSet(table.getFocusTraversalKeys(KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS));
forward.add(KeyStroke.getKeyStroke("ENTER"));
table.setFocusTraversalKeys(KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS, forward);
//Set backward = new HashSet(table.getFocusTraversalKeys(KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS));
//backward.add(KeyStroke.getKeyStroke("shift TAB"));
//table.setFocusTraversalKeys(KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS, backward);
于 2013-06-23T10:59:04.500 回答