BorderLayout 是什么
BorderLayout是一个布置容器的边框布局,它可以对容器组件进行安排,并调整其大小,使其符合下列五个区域:北、南、东、西、中,每个区域最多只能包含一个组件。
组件之间没有间距(默认间距为0像素)
导入
import java.awt.BorderLayout;
创建
创建一个名为b的边框布局对象
BorderLayout b= new BorderLayout();
BorderLayout里面也可以加参数:
public BorderLayout(int hgap,int vgap)构造一个具有指定组件间距的边框布局。水平间距由 hgap 指定,垂直回间距由 vgap 指定。
参数:
- hgap - 水平间距。
- vgap - 垂直间距。
BorderLayout b= new BorderLayout(10,1);
设置布局样式
设置布局样式为b(边框布局BorderLayout)
setLayout(b);
也可以将创建步骤和设置步骤融合为一步
setLayout(new BorderLayout());
因为当前类是继承了Jframe所以直接setLayout就是给窗体设置布局样式
根据指定区域 添加按钮
- 上北:NORTH
- 下南:South
- 左西:West
- 右东:East
- 中间:CENTER
- 如果未指定,默认是CENTER
以下两种方式都可以用来指定组件位置
add("East",new JButton("东"));
add("West",new JButton("西"));
add("South",new JButton("南"));
add(new JButton("北"),BorderLayout.NORTH);
add(new JButton("中间"),BorderLayout.CENTER);
在窗口东南西北中间显示一个按钮
import java.awt.BorderLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
public class Source4 extends JFrame {
Source4() {
setTitle("test");
BorderLayout b= new BorderLayout();
setLayout(b);
//setLayout(new BorderLayout());
add("East",new JButton("东"));
add("West",new JButton("西"));
add("South",new JButton("南"));
add(new JButton("北"),BorderLayout.NORTH);
add(new JButton("中间"),BorderLayout.CENTER);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(300,110);
setVisible(true);
}
public static void main(String[] args) {
new Source4();
}
}