常用布局管理器
1、绝对布局
setLayout(null); // 使该窗体取消布局管理器设置
JButton b1 = new JButton("按钮1");
b1.setBounds(10, 30, 80, 30);
2、流布局管理器
// 设置窗体使用流布局管理器,使组件右对齐,并且设置组件之间的水平间隔10与垂直间隔10
setLayout(new FlowLayout(FlowLayout.RIGHT,10,10));
//FlowLayout.LEFT//FlowLayout.CENTER
JButton b1 = new JButton("按钮1");
c.add(b1);
3、边界布局管理器
setLayout(new BorderLayout());//设置容器为边界布局管理器
JButton b1 = new JButton("按钮1");
c.add(b1,BorderLayout.CENTER);
c.add(b2,BorderLayout.NORTH);
c.add(b3,BorderLayout.EAST);
c.add(b4,BorderLayout.WEST);
c.add(b5,BorderLayout.SOUTH);
后放入的组件会覆盖先前的组件
4、网格布局管理器
setLayout(new GridLayout(3, 1, 5, 5));// 设置容器使用网格布局管理器,设置3行1列的网格
JButton b1 = new JButton("按钮1");
c.add(b1);
如果有大于设定的网格(7x3)的组件,它会自动优化,改变它的布局成如(7x4)
常用面板
1、JPanel面板
依赖于JFrame窗体进行使用
// 初始化一个面板,设置2行2列的网格布局
c.setLayout(new GridLayout(2, 2, 10, 10));
//设置小面板里的布局
JPanel p1 = new JPanel(new GridLayout(1, 3, 10, 10));
p1.add(new JButton("1"));// 在面板中添加按钮
c.add(p1); // 在容器中添加面板
2、JScrollPane滚动面板
// 创建文本区域组件,默认大小为20行50列
JTextArea ta = new JTextArea(20, 50);
JScrollPane sp = new JScrollPane(ta); // 创建JScrollPane面板对象
c.add(sp);