java 图形化 怎样设置每一个JTabbedPane的内容

对java swing这块实在不熟悉。开发需要,不得不实现一下

已有代码如下,需要在JTabblePane中实现一个柱状图:

package swingTest;

import java.awt.BorderLayout;
import java.awt.EventQueue;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JTabbedPane;
import javax.swing.JTree;
import javax.swing.JMenuBar;
import javax.swing.JMenu;
import java.awt.SystemColor;

public class Test3 extends JFrame {

private JPanel contentPane;

/**
 * Launch the application.
 */
public static void main(String[] args) {
    EventQueue.invokeLater(new Runnable() {
        public void run() {
            try {
                Test3 frame = new Test3();
                frame.setVisible(true);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    });
}

/**
 * Create the frame.
 */
public Test3() {
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    setBounds(100, 100, 1088, 642);

    JMenuBar menuBar = new JMenuBar();
    setJMenuBar(menuBar);

    JMenu mnStart = new JMenu("Start");
    menuBar.add(mnStart);

    JMenu mnEdit = new JMenu("Edit");
    menuBar.add(mnEdit);

    JMenu mnSourcr = new JMenu("Sourcr");
    menuBar.add(mnSourcr);

    JMenu mnHelp = new JMenu("Help");
    menuBar.add(mnHelp);
    contentPane = new JPanel();
    contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
    contentPane.setLayout(new BorderLayout(0, 0));
    setContentPane(contentPane);

    JTabbedPane tabbedPane = new JTabbedPane(JTabbedPane.TOP);
    contentPane.add(tabbedPane, BorderLayout.CENTER);

    JTabbedPane tabbedPane_1 = new JTabbedPane(JTabbedPane.TOP);
    tabbedPane_1.setBackground(SystemColor.inactiveCaptionText);
    tabbedPane.addTab("New tab", null, tabbedPane_1, null);

    JTabbedPane tabbedPane_2 = new JTabbedPane(JTabbedPane.TOP);
    tabbedPane_2.setBackground(SystemColor.textInactiveText);
    tabbedPane.addTab("New tab", null, tabbedPane_2, null);

    JTabbedPane tabbedPane_3 = new JTabbedPane(JTabbedPane.TOP);
    tabbedPane_3.setBackground(SystemColor.info);
    tabbedPane.addTab("New tab", null, tabbedPane_3, null);
}

}

感觉java Swing用的比较少了,几乎都不用,做本地的应用多数都是用Winfor

import java.awt.BorderLayout;
import java.awt.EventQueue;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JButton;
import javax.swing.JTabbedPane;
import javax.swing.JTree;
import javax.swing.JMenuBar;
import javax.swing.JMenu;
import java.awt.SystemColor;

public class Test3 extends JFrame {

private JPanel contentPane;

/**

  • Launch the application. */ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { Test3 frame = new Test3(); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); }

/**

  • Create the frame.
    */
    public Test3() {
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    setBounds(100, 100, 1088, 642);

    JMenuBar menuBar = new JMenuBar();
    setJMenuBar(menuBar);

    JMenu mnStart = new JMenu("Start");
    menuBar.add(mnStart);

    JMenu mnEdit = new JMenu("Edit");
    menuBar.add(mnEdit);

    JMenu mnSourcr = new JMenu("Sourcr");
    menuBar.add(mnSourcr);

    JMenu mnHelp = new JMenu("Help");
    menuBar.add(mnHelp);
    contentPane = new JPanel();
    contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
    contentPane.setLayout(new BorderLayout(0, 0));
    setContentPane(contentPane);

    JTabbedPane tabbedPane = new JTabbedPane(JTabbedPane.TOP);
    contentPane.add(tabbedPane, BorderLayout.CENTER);

    JPanel tabbedPane_1 = new JPanel();//放你的柱状图
    tabbedPane_1.add(new JButton("按钮"));
    tabbedPane_1.setBackground(SystemColor.inactiveCaptionText);
    tabbedPane.addTab("New tab1", null, tabbedPane_1, null);

    JTabbedPane tabbedPane_2 = new JTabbedPane(JTabbedPane.TOP);
    tabbedPane_2.setBackground(SystemColor.textInactiveText);
    tabbedPane.addTab("New tab2", null, tabbedPane_2, null);

    JTabbedPane tabbedPane_3 = new JTabbedPane(JTabbedPane.TOP);
    tabbedPane_3.setBackground(SystemColor.info);
    tabbedPane.addTab("New tab3", null, tabbedPane_3, null);
    }

}

JTabbedPane上面加Jpanel不要再加JTabbedPane了 将你的柱状图放到panel上就对了