Java 过滤下一焦点组件
我想过滤下一个焦点组件 使用tab键 例如,我不想关注Java 过滤下一焦点组件,java,swing,focus,Java,Swing,Focus,我想过滤下一个焦点组件 使用tab键 例如,我不想关注JLabel,JScrollPane,JScrollBar按钮,JPanel等等 在没有程序员处理焦点的情况下,我如何动态地实现这一点 以下是我所做的: JFrame frame = new JFrame(""); frame.setFocusTraversalPolicy(new JTPCFocusTraversalPolicy()); public class JTPCFocusTraversalPolicy extends Layou
JLabel
,JScrollPane
,JScrollBar
按钮,JPanel
等等
在没有程序员处理焦点的情况下,我如何动态地实现这一点
以下是我所做的:
JFrame frame = new JFrame("");
frame.setFocusTraversalPolicy(new JTPCFocusTraversalPolicy());
public class JTPCFocusTraversalPolicy extends LayoutFocusTraversalPolicy {
protected boolean accept(Component aComponent) {
return !JTPCGUIUtils.getInstance().filterCompoenent(aComponent);
}
}
我有一个案例是JList
和JButton
,但我必须按tab键4次才能在1000个组件之间移动
在我的例子中,如何只制作两个标签在列表和按钮之间移动?请看下面的示例: 该复选框已从焦点循环中删除,代码如下:
从Java 1.4开始,您可以定义。发现了我的问题,我确实编写了我自己的FocusTraversalPolicy,看起来它可以工作,但我有一些隐藏面板,其中一些按钮不可见对不起,谢谢
togglePolicy.setFocusable(false);