显示JTabbedPane的第一个选项卡

时间:2011-12-13 12:53:39

标签: java swing netbeans-6.9 netbeans6.8 jtabbedpane

我有一个Jtabbedpane,其中包含4个标签(每个标签都是一个Jpanel)。

当我从netbeans 6.8运行应用程序时,所选选项卡将与关闭应用程序之前选择的选项卡相同。

每次运行我的应用程序时,有没有办法选择第一个选项卡(索引0)? 这是代码:

mainTabbedPanel = new javax.swing.JTabbedPane();
mainTabbedPanel.setName("mainTabbedPanel");
mainTabbedPanel.addTab(resourceMap.getString("panel1"), panel1);
mainTabbedPanel.addTab(resourceMap.getString("panel2"), panel2);
mainTabbedPanel.addTab(resourceMap.getString("panel3"), panel3);
mainTabbedPanel.addTab(resourceMap.getString("panel4"), panel4);

这些是netbeans的private void initComponents()方法 并在启动时(我的应用程序的构造函数)将调用initComponents。 我在调用initComponents()之后尝试放入mainTabbedPanel.setSelectedIndex(0)但是没有用。

1 个答案:

答案 0 :(得分:6)

默认情况下,将选择第一个选项卡。如果发生了除此之外的其他事情,则必须在某处使用setSelectedIndex(...)来重置选项卡。您需要搜索生成的代码以找出它的位置并删除代码。

如果您不知道如何删除代码,则可以尝试在执行默认代码后重置索引。这是通过在GUI可见后使用SwingUtilities.invokeLater完成的。您的代码将类似于:

SwingUtilities.invokeLater(new Runnable()
{
    public void run()
    {
        tabbedPane.setSelectedIndex(0);
    }
});