您的位置:首页 > 编程语言 > Java开发

博为峰Java技术文章 ——JavaSE Swing BorderLayout布局管理器实例II

2017-01-11 00:00 417 查看
博为峰小博老师:

下面在列举一个稍微复杂的实例。在实例中将5个不同的内容面板放到与顶层窗口相关联的内容面板后,再在每个内容面板中添加组件,其代码如下所示:

public class BWF {

static int width=800;

static int height=600;

public static void main(String[] args){

JFrame jf=new JFrame("BorderLayout布局管理器测试实例");

jf.setSize(width, height);

jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

jf.setVisible(true);

JPanel contentPane=new JPanel();

jf.setContentPane(contentPane);//将中间容器组件对象contentPane设置为内容面板

JButton button1=new JButton("p1东");//创建25个按钮组件

JButton button2=new JButton("p1南");

JButton button3=new JButton("p1西");

JButton button4=new JButton("p1北");

JButton button5=new JButton("p1中");

JButton button6=new JButton("p2东");

JButton button7=new JButton("p2南");

JButton button8=new JButton("p2西");

JButton button9=new JButton("p2北");

JButton button10=new JButton("p2中");

JButton button11=new JButton("p3东");

JButton button12=new JButton("p3南");

JButton button13=new JButton("p3西");

JButton button14=new JButton("p3北");

JButton button15=new JButton("p3中");

JButton button16=new JButton("p4东");

JButton button17=new JButton("p4南");

JButton button18=new JButton("p4西");

JButton button19=new JButton("p4北");

JButton button20=new JButton("p4中");

JButton button21=new JButton("p5东");

JButton button22=new JButton("p5南");

JButton button23=new JButton("p5西");

JButton button24=new JButton("p5北");

JButton button25=new JButton("p5中");

BorderLayout lay=new BorderLayout();

jf.setLayout(lay);//创建一个布局管理对象,将中间容器设置为此布局管理

JPanel p1=new JPanel();//创建5个中间容器,并且将它们的布局管理器设成BorderLayout方式

JPanel p2=new JPanel();

JPanel p3=new JPanel();

JPanel p4=new JPanel();

JPanel p5=new JPanel();

contentPane.add(p1,"West");//将5个中间容器对象分别加入到上层中间容器中,并且按照BorderLayout的方式进行布局

contentPane.add(p2,"North");

contentPane.add(p3,BorderLayout.EAST);

contentPane.add(p4,BorderLayout.SOUTH);

contentPane.add(p5,BorderLayout.CENTER);

p1.setLayout(new BorderLayout());

p1.add(button1,BorderLayout.WEST);//将第1-5个普通按钮组件按照BorderLayout方式布局到p1中间容器中

p1.add(button2,BorderLayout.NORTH);

p1.add(button3,BorderLayout.EAST);

p1.add(button4,BorderLayout.SOUTH);

p1.add(button5,BorderLayout.CENTER);

p2.setLayout(new BorderLayout());

p2.add(button6,BorderLayout.WEST);//将第6-10个普通按钮组件按照BorderLayout方式布局到p2中间容器中

p2.add(button7,BorderLayout.NORTH);

p2.add(button8,BorderLayout.EAST);

p2.add(button9,BorderLayout.SOUTH);

p2.add(button10,BorderLayout.CENTER);

p3.setLayout(new BorderLayout());

p3.add(button11,BorderLayout.WEST);//将第11-15个普通按钮组件按照BorderLayout方式布局到p3中间容器中

p3.add(button12,BorderLayout.NORTH);

p3.add(button13,BorderLayout.EAST);

p3.add(button14,BorderLayout.SOUTH);

p3.add(button15,BorderLayout.CENTER);

p4.setLayout(new BorderLayout());

p4.add(button16,BorderLayout.WEST);//将第16-20个普通按钮组件按照BorderLayout方式布局到p4中间容器中

p4.add(button17,BorderLayout.NORTH);

p4.add(button18,BorderLayout.EAST);

p4.add(button19,BorderLayout.SOUTH);

p4.add(button20,BorderLayout.CENTER);

p5.setLayout(new BorderLayout());

p5.add(button21,BorderLayout.WEST);//将第21-25个普通按钮组件按照BorderLayout方式布局到p5中间容器中

p5.add(button22,BorderLayout.NORTH);

p5.add(button23,BorderLayout.EAST);

p5.add(button24,BorderLayout.SOUTH);

p5.add(button25,BorderLayout.CENTER);

}

}





上面使用了布局管理器内嵌布局管理器的方式。每个方位都添加一个中间容器又使用一个BorderLayout布局管理器来布局其中的组件。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息