我已经JDialog
添加了不同的组件(JButton
,JTextField
,JRadioButton
等。它运行正常,功能符合要求,同时当我使用TAB键时使用键盘与UI交互它迭代所有组件但问题是 - 并非所有组件的焦点都在UI。
当按下Tab键并且下一个组件是文本字段时,光标开始闪烁,再次按下选项卡并且下一个组件是一个单选按钮,如果我按空格键,那个单选按钮的焦点在同一时间不可见选择此单选按钮将被选中。
同样焦点对于下一个内联按钮或组合框不可见,但按空格键选择它会分别按下按钮并下拉组合框选项。
按Tab键会根据需要迭代所有组件的焦点,但对所有组件都不可见
答案 0 :(得分:1)
我正在使用扩展MetalLAF的自定义MetroLAF
我们绝对无法从您原来的问题中知道这就是为什么您需要在每个问题上发布一个SSCCE
,以便我们可以看到您在做什么。
由于您使用的是非标准类,因此该问题与该类有关。由于您还没有发布带有此非标准课程代码的SSCCE,我们仍无法为您提供帮助。您需要自己调试代码或使用Metal LAF。
MetroLAF中未定义焦点颜色
那么它是在Metal LAF中定义的,因此应该定义Metro从Metal延伸。如果没有,那么由你决定颜色。
您可以查看显示每个LAF默认值的UIManager Default。它还显示了如何设置值。当然,设置值只有在代码使用值时才有效。