Java 如何将焦点转移到单击的选项卡上

Java 如何将焦点转移到单击的选项卡上,java,swing,tabs,mouselistener,jtabbedpane,Java,Swing,Tabs,Mouselistener,Jtabbedpane,我有一个JTabbedPane,当我添加新选项卡按钮时,它会创建新选项卡,并关注新选项卡。但我想在单击新选项卡时将焦点从新选项卡转移到另一个选项卡 如何将焦点转移到单击的选项卡上?提前谢谢 以下是处理新选项卡的代码部分: public Test(){ newPage = new JButton(); newPage.setPreferredSize(new Dimension(30, 30)); newPage.setBorderPainted(false); n

我有一个JTabbedPane,当我添加新选项卡按钮时,它会创建新选项卡,并关注新选项卡。但我想在单击新选项卡时将焦点从新选项卡转移到另一个选项卡

如何将焦点转移到单击的选项卡上?提前谢谢

以下是处理新选项卡的代码部分:

public Test(){
    newPage = new JButton();
    newPage.setPreferredSize(new Dimension(30, 30));
    newPage.setBorderPainted(false);
    newPage.setBackground(Color.decode("#330300"));
    newPage.setToolTipText("New Page");
    newPage.setEnabled(true);
    JPanel jp = new JPanel();
    jp.setLayout(new BorderLayout());
    tb = new JTabbedPane();
    tb.setUI(new CustomTabbedPaneUI());
    tb.setForeground(Color.decode("#330300"));
    tb.addTab("New Tab", fPane);
    jp.add(new JLayer<JTabbedPane>(tb));
    newPage.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent ae) {
            try {
                tb.addTab("New Tab", new JPanel());
                //initial value of inI=0;
                tb.setSelectedIndex(inI+1);
                inI++;
            } catch (IOException ex) {
                Logger.getLogger(Pooh.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
    });
    tb.setOpaque(true);


}
不需要变量来跟踪选项卡式窗格中的选项卡数量

您可以从选项卡式窗格本身获取该信息。我认为方法是getTabCount之类的。请阅读JTabbedPane中的方法

然后,您可以通过从方法返回的值中减去一来选择选项卡

不需要变量来跟踪选项卡式窗格中的选项卡数量

您可以从选项卡式窗格本身获取该信息。我认为方法是getTabCount之类的。请阅读JTabbedPane中的方法

然后,您可以通过从方法返回的值中减去一来选择选项卡

tb.setSelectedIndex(inI+1);
inI++;