我正在尝试重新定义 JRadioButton 中 Tab 键的行为,以便它的行为类似于其他 GUI 应用程序中的单选按钮,即:
- 箭头键循环通过 ButtonGroup 中的单选按钮(我有这个工作)
- Tab 将焦点移至组中最后一个单选按钮之后的下一个组件(问题区域)
我有一个 Action 可以执行必要的步骤来找到正确的焦点组件和所有内容,但是向 InputMap 添加一个条目似乎不起作用:
getInputMap().put(KeyStroke.getKeyStroke(KeyEvent.VK_TAB, 0), "jumpNext");
getActionMap().put("jumpNext", new JumpNextAction());
我在 Tab 的输入映射中的条目似乎被忽略了,因为该操作永远不会被执行。我想这可能是因为 KeyboardFocusManager 或相关的东西在它到达组件的输入映射之前消耗了 Tab 事件。
关于如何停止此行为并改为使用自定义 Tab 行为的任何想法?