import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import javax.swing.BoxLayout;
import javax.swing.JTabbedPane;
import javax.swing.JPanel;
import javax.swing.JFrame;
import javax.swing.JButton;
import javax.swing.ImageIcon;
import javax.swing.UIManager;
class TabPane extends JTabbedPane
{
JPanel panel1, panel2, panel3, panel4, panel5;
public TabPane ()
{
//super (a, b);
panel1 = new JPanel ();
panel1.add(new JButton());
panel2 = new JPanel (new BorderLayout());
panel3 = new JPanel (true);
panel4 = new JPanel (new GridLayout(2,3));
panel5 = new JPanel (new FlowLayout(FlowLayout.LEFT, 1, 0));
//以上是JPanel的四种构造方法
//窗体布局器有四种设置:
//new BorderLayout () or new BorderLayout (int hgap, int vgap)
//new GridLayout () or new GridLayout (int rows, int cols) new GridLayout (int rows, int cols, int hgap, int vgap)
//new FlowLayout () or new FlowLayout (int align) or new FlowLayout (int align, int hgap, int vgap)
//new BoxLayout (Container target, int axis)
//public JTabbedPane (int tabPlacement, int tabLayoutPolicy)
//tabPlacement:JTabbedPane.TOP, JTabbedPane.BOTTOM, JTabbedPane.LEFT, or JTabbedPane.RIGHT.
//ltabLayoutPolicy:JTabbedPane.WRAP_TAB_LAYOUT or JTabbedPane.SCROLL_TAB_LAYOUT.
//其他两种JTabbedPane的构造方法:
//JTabbedPane ()
//JTabbedPane (int tabPlacement)
add (panel1, 0);
setBackgroundAt (0, Color.cyan);
setForegroundAt (0,Color.red);
add (panel2, this , 1);
setEnabledAt (1, false);
setTitleAt (1,"panel one");
addTab ("panel3", panel3);
setToolTipTextAt (2, "ToolTip3");
addTab ("panel4", new ImageIcon("QQ.png"), panel4, "ToolTip4");
addTab ("panel5", panel5);
setPreferredSize (new Dimension (500,200));
setTabPlacement (JTabbedPane.BOTTOM);//设置标签的位置
setTabLayoutPolicy (JTabbedPane.SCROLL_TAB_LAYOUT);
}
}
public class JTabbedPaneDemo
{
public static void main(String[] args)
{
try{UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());}catch(Exception e){}//显示风格
TabPane tabPane = new TabPane ();
JFrame frame = new JFrame ("JTabbedPaneDemo");
frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
frame.setVisible (true);//默认为false
frame.setContentPane(tabPane);
frame.pack();
}
}
评论