如何创建一个简单的JTabbedPane?

在此示例中,您将学习如何JTabbedPane在选项卡式视图中排列某些组件。JTabbedPaneSwing API的组件允许某些组件(例如面板)共享同一视图。通过选择相应的选项卡,面板将显示在用户的屏幕上。要将选项卡添加到JTabbedPane类中,可以使用addTab()方法。

该addTab()方法接受两个参数,即选项卡的标题和希望显示为选项卡内容的组件。在下面的代码片段中,我们将使用一个简单的面板作为选项卡的内容。您还可以为选项卡定义图像图标,以使程序看起来更好。您可以在以下示例中阅读它:

现在,让我们创建一个简单的示例,JTabbedPane其中包含三个选项卡和相应的内容,分别是“仪表板”,“交易”和“帐户”选项卡。以下是显示屏幕外观的图像。

简单的JTabbedPane演示

package org.nhooo.example.swing;

import javax.swing.*;
import java.awt.*;

public class SimpleTabbedPane extends JPanel {
    public SimpleTabbedPane() {        initializeUI();
    }

    public static void showFrame() {
        JPanel panel = new SimpleTabbedPane();        panel.setOpaque(true);

        JFrame frame = new JFrame("Simple Tabbed Pane Demo");
        frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);        frame.setContentPane(panel);        frame.pack();        frame.setVisible(true);
    }

    public static void main(String[] args) {
        SwingUtilities.invokeLater(new Runnable() {
            public void run() {                SimpleTabbedPane.showFrame();
            }
        });
    }

    private void initializeUI() {
        JTabbedPane tabbedPane = new JTabbedPane();

        JPanel dashboardPanel = new JPanel();
        dashboardPanel.add(new JLabel("Dashboard"));

        // 添加仪表板选项卡
        tabbedPane.addTab("Dashboard", dashboardPanel);

        JPanel transactionPanel = new JPanel();
        transactionPanel.add(new JLabel("Transaction"));

        // 添加交易标签
        tabbedPane.addTab("Transaction", transactionPanel);

        JPanel accountPanel = new JPanel();
        accountPanel.add(new JLabel("Account"));

        // 添加帐户标签
        tabbedPane.addTab("Account", accountPanel);

        this.setLayout(new BorderLayout());
        this.setPreferredSize(new Dimension(500, 200));
        this.add(tabbedPane, BorderLayout.CENTER);
    }
}