java.lang.Object | +----java.awt.BorderLayout
这是一个对容器进行布局的边界布局,可对其组件进行安放,并改变组件的大小,使其符合下列五个区域:
North、South、East、
West 和 Center。当使用边界布局管理器将一个组件添加到一个容器中时,使用五个名字中的一个,例如:
Panel p = new Panel();
p.setLayout(new BorderLayout());
p.add(new Button("Okay"), "South");
为了方便,BorderLayout 将缺少字符串规格说明的情况解释为“Center”:
Panel p2 = new Panel();
p2.setLayout(new BorderLayout());
p2.add(new TextArea()); // 与 p.add(new TextArea(), "Center") 方
法相同;
根据组件的最佳尺寸和容器尺寸的约束条件来对组件进行布局。
North 和 South 组件可在水平方向进行伸展;East 和 West 组件可在垂直方向进行伸展;Center 组件可在水平和垂直两个方向上伸展,来填充整个剩余空间。
这是一个使用 BorderLayout 布局管理器的例子,它对一个 applet
中的五个按钮进行布局:
如下是这个 applet 的代码:
import java.awt.*;
import java.applet.Applet;
public class buttonDir extends Applet {
public void init() {
setLayout(new BorderLayout());
add("North", new Button("North"));
add("South", new Button("South"));
add("East", new Button("East"));
add("West", new Button("West"));
add("Center", new Button("Center"));
}
}
目标容器的最小尺寸。
目标容器的最佳尺寸。
public static final String NORTH
public static final String SOUTH
public static final String EAST
public static final String WEST
public static final String CENTER
public BorderLayout()
public BorderLayout(int hgap,
int vgap)
hgap 指定,垂直间距由 vgap 指定。
public int getHgap()
public void setHgap(int hgap)
public int getVgap()
public void setVgap(int vgap)
public void addLayoutComponent(Component comp,
Object constraints)
"North"、"South"、
"East"、"West" 或 "Center" 。
大多数应用不直接调用该方法。当使用 Container.add方法,将一个组件添加到一个容器中时,用相同的参数类型调用该方法。
public void addLayoutComponent(String name,
Component comp)
addLayoutComponent(Component, Object) 方法替换。.
public void removeLayoutComponent(Component comp)
remove
或 removeAll 方法时,该方法被调用。大多数应用不直接调用该方法。
public Dimension minimumLayoutSize(Container target)
目标容器的最小尺寸。
当容器调用它的 getMinimumSize 方法时,该方法被调用。大多数应用不直接调用该方法。
public Dimension preferredLayoutSize(Container target)
目标容器的最佳尺寸。
大多数应用不直接调用该方法。当容器调用它的
getPreferredSize 方法时,该方法被调用。
public Dimension maximumLayoutSize(Container target)
public float getLayoutAlignmentX(Container parent)
public float getLayoutAlignmentY(Container parent)
public void invalidateLayout(Container target)
public void layoutContainer(Container target)
事实上,该方法调整指定容器中组件的形状,使其满足该
BorderLayout 对象的约束条件。若存在 North 组件和
South 组件,分别放在容器的顶部和底部。相应的,West
组件和 East 组件分别放在容器的左边和右边。最后,
Center 对象放在中间剩余的任何区域上。
大多数应用不直接调用该方法。当容器调用它的
doLayout 方法时,该方法被调用。
public String toString()