一、Panel是AWT中的另一个典型的容器,它代表不能独立存在、必须放在其他容器中使用。
1、可作为容器来盛装其他组件,为放置组件提供空间。
2、不能单独存在,必须放置到其他容器当中。
3、默认使用FlowLayout作为布局管理器。
1 public class PanelTest extends Frame 2 { 3 public static void main(String[] args) 4 { 5 Frame f = new Frame(); 6 Panel p = new Panel(); 7 p.add(new TextField(20)); 8 p.add(new Button("百度")); 9 f.add(p); 10 f.setBounds(50, 50, 300, 300); 11 f.setVisible(true); 12 } 13 }
二、FlowLayout布局管理器
在FlowLayout布局管理器中,组件像流水一样向某方向流动(排列),遇到障碍(边界)就折回,重头开始排列。
三个构造器:
FlowLayout:使用默认的对齐方式及默认的垂直间距、水平间距创建FlowLayout布局管理器。
FlowLayout(int align):使用指定的对齐方式及默认的垂直间距、水平间距创建FlowLayout布局管理器。
FlowLayout(int align,int hgap,int vgap):使用指定的对齐方式及指定的垂直间距、水平间距创建FlowLayout布局管理器。
1 public class FlowLayoutTest 2 { 3 public static void main(String[] args) 4 { 5 Frame f = new Frame(); 6 f.setLayout(new FlowLayout(FlowLayout.LEFT,20,5)); 7 Button b1 = new Button("a1"); 8 Button b2 = new Button("a2"); 9 Button b3 = new Button("a3"); 10 f.add(b1); 11 f.add(b2); 12 f.add(b3); 13 f.pack(); 14 f.setVisible(true); 15 16 } 17 }
三、BorderLayout布局管理器
BorderLayout将容器分为EAST(东),SOUTH(南),WEST(西),NORTH(北),CENTER(中)五个区域,普通组件可以放在这5个区域中的任意一个。
构造器:
BorderLayout():使用默认的水平间距、垂直间距创建BorderLayout布局管理器
BorderLayout(int hgap,int vgap):使用指定的水平间距、垂直间距创建BorderLayout布局管理器。
1 public class BorderLayoutTest extends Frame 2 { 3 public static void main(String[] args) 4 { 5 Frame f = new Frame(); 6 f.setLayout(new BorderLayout(30, 5)); 7 f.add(new Button("南"),BorderLayout.SOUTH); 8 f.add(new Button("北"),BorderLayout.NORTH); 9 f.add(new Button("中")); 10 f.add(new Button("东"),BorderLayout.EAST); 11 f.add(new Button("西"),BorderLayout.WEST); 12 13 f.pack(); 14 f.setVisible(true); 15 } 16 }
四、GridLayout布局管理器
有错请指出 谢谢!