布局管理器(四)——Borderyout

    BorderLayout(边框布局)这是一个布置容器的边框布局,它可以对容器组件进行安排,并调整其大小,使其符合下列五个区域:北、南、东、西、中。每个区域最多只能包含一个组件,并通过相应的常量进行标识: NORTHSOUTHEASTWESTCENTER 。当使用边框布局将一个组件添加到容器中时,要使用这五个常量之一,例如:

    Panel p = new Panel();
    p.setLayout(new BorderLayout());
    p.add(new Button("Okay"), BorderLayout.SOUTH); 
 

为了方便起见,BorderLayout 将缺少字符串说明的情况解释为常量 CENTER 。尽管BorderLayout有5个可用区域,但是每个区域并不一定都要添加组件。添加的子组件使用上面提到的5个常量之一。

子组件尺寸:

上:NORTH区域显示的组件,分配高度等于子组件的首选高度,分配宽度为容器的可用宽度,子组件宽度为容器的可用宽度减去左右插入值。
下:SOUTH区域显示组件和上类似,高度等于子组件首选高度,宽度等于容器可用宽度减去左右插入值。
左:WEST区域显示子组件宽度等于子组件的首选宽度,子组件高度=容器的可用高度-上下组件占用的高度-上下高度插入值。
右:EAST区域显示子组件宽度等于子组件的首选宽度,子组件高度=容器的可用高度-上下组件占用的高度-上下高度插入值。

中:将空间分配给前面的四个组件后,剩余空间就是分配给CENTER区域的空间,因此CENTER组件可能会根据剩余区域伸缩,它的大小取决于其他四个组件所占用的大小。

 

 

参考:

1. Pro Java Programming(Second Edition)

 2. Core Java I

你可能感兴趣的:(java,BorderLayout)