当我们在创建的窗口里面添加一些其他组件的时候,这个时候我们就得考虑到布局的问题,这里介绍常用的三种布局:
一.流式布局
流式布局就是让容器中组件按照设置好的对齐方式(左对齐、居中、右对齐)【默认居中】
从左向右排列,一行排满将换行排列;
示例代码如下:
import java.awt.*;
public class testFlowLaout {
public static void main(String[] args) {
Frame frame=new Frame();
//创建按钮组件,就是将Button的类实例化
Button button1=new Button("button1");
Button button2=new Button("button2");
Button button3=new Button("button3");
frame.setBackground(new Color(0x28C628));
frame.setBounds(100,100,500,500);
frame.setVisible(true);
//设置窗口的布局为流式布局,并且设置初始为左对齐,设置组件之间的水平间距为50,垂直间距为50
frame.setLayout(new FlowLayout(FlowLayout.LEFT,50,50));
//将按钮加入窗口中
frame.add(button1);
frame.add(button2);
frame.add(button3);
}
}
效果图如下:
二.边界布局(东西南北中)
边界布局就是按照如下图所示的划分形式,在对应的位置里放置组件。
示例代码如下:
import java.awt.*;
public class testBorderLaout {
public static void main(String[] args) {
Frame frame=new Frame();
Button center=new Button("center");
Button top=new Button("top");
Button left=new Button("left");
Button right=new Button("right");
Button bottom=new Button("bottom");
frame.setVisible(true);
frame.setBounds(100,100,500,500);
//分别将五个按钮布置到东西南北中对应的位置上
frame.add(center,BorderLayout.CENTER);
frame.add(left,BorderLayout.WEST);
frame.add(right,BorderLayout.EAST);
frame.add(bottom,BorderLayout.SOUTH);
frame.add(top,BorderLayout.NORTH);
}
}
效果图如下:
三.表格布局
表格布局就是设置好行数和列数,在对应的形成的小格子里放置组件。
示例代码如下:
import java.awt.*;
public class testGridLaout {
public static void main(String[] args) {
Frame frame=new Frame();
Button btn1=new Button("btn1");
Button btn2=new Button("btn2");
Button btn3=new Button("btn3");
Button btn4=new Button("btn4");
Button btn5=new Button("btn5");
Button btn6=new Button("btn6");
//设置为一个两行三列的表格
frame.setLayout(new GridLayout(2,3));
frame.add(btn1);
frame.add(btn2);
frame.add(btn3);
frame.add(btn4);
frame.add(btn5);
frame.add(btn6);
frame.setVisible(true);
frame.setBounds(100,100,500,500);
}
}