JAVA中AWT的布局管理

       布局管理器是容器类的特性,每种容器都有一种默认的布局管理器。

      在java.awt中共提供了5个布局管理类,分别是FlowLayout,BorderLayout,CardLayout,GridLayout,GridBagLayout,每一个布局类都对应一种布局策略,它们都是java.lang.Object的子类。

1.BorderLayout类

      BorderLayout(边布局)的策略是将被划分为东西南北中,分别用East,West,South,North,Center表示。往容器中加入组件都要指定放在哪个区域。

      BorderLayout类的构造方法:

      BorderLayout()   //创建新的Borderlayout布局

      BorderLayout(int hgap,int vgap)   //创建组件之间水平与垂直间距分别为hgap与vgap个像素的布局

      向容器中添加BorderLayout类布局管理器的事例:

      伪码

      frm   //窗口对象

      lagout   //布局管理器对象

      butt   //按钮对象

      frm.setLayout(layout);   //给frm添加布局管理器layout

      frm.add(butt,BorderLayout.NORTH);   //将按钮组件定位在窗口北部,其他方向同理

2.FlowLayout类

      FlowLayout类(流式布局)的布局策略提供按行布局组件方式,将组件按照从左到右,从上到下的顺序排列

      FlowLayout类的构造方法:

      FlowLayout()   //创建FlowLayout布局,组件使用默认的居中对齐方式,各组件的垂直与水平间距都是5像素

  FlowLayout(int align)  //创建FlowLayout布局,对齐方式为指定的align,align的取值有FlowLayout.LEFI,FlowLayout.CENTER,FlowLayout.RIGHT,分别代表靠左,中间,靠右对齐,各组件的垂直与水平距离是5像素

       容器中添加FlowLayout类布局的例子:

       伪码

       frm   //窗口对象

       but1 but2   //按钮对象

       txt1,txt2   //文本行对象

       layout    //FlowLayout布局对象

       frm.setLayout(layout);

       frm.add(but1);

       frm.add(but2);

       frm.add(txt1);

       frm.add(txt2);

3.GridLayout类

       GridLayout类(网格布局)管理器将容器划分为大小相等的若干行,若干列的网格,组件按照从左到右,从上到下的顺序依次放入各网格中,每个组件占满一格,如果组件数比网格数多,系统将自动增加网格数,如果组件数比网格数少,未用的网格区空闲。

       GridLayout类的构造方法:

       GridLayout()   //创建具有一行一列的GridLayout布局

       GridLayout(int rows,int cols)   //创建具有rows行,cols列的GridLayout布局

       GridLayout(int rows,int cols,int hgap,int vgap)   // 创建具有rows行,cols列的的的GridLayout布局,组件的行间距和列间距分别为hgap和vgap像素

       容器中添加GridLayour类布局的事例:

       伪码

       frm  //窗口对象

       layout   //GridLayout对象

       num[i]   //Sting类数组

       frm.setLayout(layout);

       for(int j=0;j<i;j++)

       {

              frm.add(new Button(num[j]));

        }


猜你喜欢

转载自blog.csdn.net/qq_36297434/article/details/80226735