java swing几种常用容器简单实现?

一:分隔面板 JSplitPanel

代码:

import javax.swing.JFrame ;
import javax.swing.JButton ;
import javax.swing.JLabel ;
import javax.swing.JPanel ;
import javax.swing.JSplitPane ;
import java.awt.Container ;
class Tester
{
    public static void main(String args[])
    {
       JFrame frame = new JFrame("JSplitPane测试") ;
       Container con = frame.getContentPane() ;
       JPanel panel = new JPanel() ;
       JSplitPane left = null ;   //左右分隔符号
       JSplitPane top = null   ;   //上下分隔符号
       left = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,new JLabel("左标签"),new JLabel("右标签")) ;
       top = new JSplitPane(JSplitPane.VERTICAL_SPLIT,left,new JLabel("下标签")) ;
       top.setDividerSize(10) ;
       top.setOneTouchExpandable(true) ;   //设置展开条
       con.add(top) ;
       frame.setSize(500,500) ;
       frame.setLocation(300,300) ;
       frame.setVisible(true) ;
      
      
    }
}

java swing几种常用容器简单实现?

二:JTabbedPanel

代码

import java.io.File ;
import java.awt.* ;
import javax.swing.JButton ;
import javax.swing.JLabel ;
import javax.swing.JTabbedPane ;
import javax.swing.JPanel ;
import javax.swing.ImageIcon ;
import javax.swing.JFrame ;
class Tester
{
    public static void main(String args[])
    {
        JFrame frame = new JFrame("JTabbedPane测试样例") ;
        Panel p1 = new Panel() ;
        Panel p2 = new Panel() ;
        Panel p3 = new Panel() ;
        JButton button = new JButton("卡片") ;
        JLabel label = new JLabel("标签") ;
        JButton open = new JButton("打开文件") ;
        p1.add(button) ;
        p2.add(label) ;
        p3.add(open) ;
        String picPath1 = "d:"+File.separator+"ok.gif" ;
        String picPath2 = "d:"+File.separator+"exit.gif" ;
        String picPath3 = "d:"+File.separator+"play.gif" ;
        JTabbedPane tab =null;
        tab = new JTabbedPane(JTabbedPane.TOP) ;
        tab.addTab("加载",new ImageIcon(picPath1),p1,"图像") ;
        tab.addTab("关机",new ImageIcon(picPath2),p2,"文字") ;
        tab.addTab("播放",new ImageIcon(picPath3),p3,"影片") ;
        frame.add(tab) ;
        frame.setSize(500,400) ;
        frame.setLocation(300,300) ;
        frame.setVisible(true) ;
       
    }
}
效果图

java swing几种常用容器简单实现?

四:JScrollPane 添加可拖动工具条

代码

import java.io.File ;
import javax.swing.JFrame ;
import javax.swing.JButton ;
import javax.swing.JPanel ;
import javax.swing.JScrollPane ;
import javax.swing.ImageIcon ;
import javax.swing.Icon ;
import java.awt.Container ;
import javax.swing.JLabel ;
class Tester
{
    public static void main(String args[])
    {
        JFrame frame = new JFrame("scrollbar测试样例") ;
        String picPath = "d:"+File.separator+"ok.gif" ;
        Icon icon = new ImageIcon(picPath) ;
        JLabel label = new JLabel(icon) ;
        JPanel panel = new JPanel() ;
        Container con = frame.getContentPane() ;
        JScrollPane sc = null ;
        //panel.add(label) ;
        sc = new JScrollPane(panel,JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS) ;
        panel.add(label) ;
        con.add(sc) ;
        frame.setSize(600,500) ;
        frame.setVisible(true) ;
    }
};
效果图

java swing几种常用容器简单实现?