2

任何人都可以告诉我如何在我单击“添加”按钮时在 jtabbedPane 中添加面板。它就像 google chrome 新标签一样。但问题是,生成的面板必须包含一些默认组件。提前致谢。

4

1 回答 1

1

请看下面的代码。它向您展示了如何做您需要的事情。

public class DemoApp {
    private JTabbedPane tabPane = new JTabbedPane();

    public DemoApp() {
        initComponents();
    }

    private void initComponents() {
        JFrame frame = new JFrame("Test");
        frame.setSize(500, 400);
        frame.setLocationRelativeTo(null);

        JPanel panel = new JPanel();
        panel.setLayout(new BorderLayout());
        frame.getContentPane().add(panel);

        JButton btn = new JButton("Add panel");
        btn.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                int index = tabPane.getTabCount() + 1;
                JPanel newPanel = new JPanel();
                newPanel.setLayout(new FlowLayout());
                newPanel.add(new JLabel("Panel " + index));
                tabPane.addTab("Tab " + index, newPanel);
            }
        });
        panel.add(tabPane, BorderLayout.CENTER);
        panel.add(btn, BorderLayout.SOUTH);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setVisible(true);
    }

    public static void main(String[] args) {
        new DemoApp();
    }
}
于 2012-10-11T06:42:01.660 回答