我有一个JPanel
,其组件添加了绝对位置(即“pos x y”),布局实际上是两列文本字段。我想要实现的是 Tab 将焦点垂直移动到下一个组件,以便遍历第一列,然后遍历第二列。目前它是水平的。我试图扩展FocusTraversalPolicy
,但令我恼火的是你必须将它添加到JFrame
而不仅仅是面板本身 - 除非那是不正确的?
我怎样才能做到这一点?感谢。
答案 0 :(得分:2)
据我所知,默认焦点遍历循环是容器中子组件的自然顺序,即它们被添加到容器的顺序。我不太了解MigLayout,但如果你设法垂直添加组件,焦点遍历可能会跟随。
您可以将FocusTraversalPolicy设置为任何Container,但是,只有在同一个Container上调用setFocusTraversalPolicyProvider(true)时,Swing才会使用它。