一、流式布局
源代码:
package cn.ecut.layout;
import java.awt.*;
/**
* 流式布局
*/
public class TestFlowLayout {
public static void main(String[] args) {
Frame frame=new Frame("流式布局");
Button button1=new Button("button1");
Button button2=new Button("button2");
Button button3=new Button("button3");
Button button4=new Button("button4");
Button button5=new Button("button5");
Button button6=new Button("button6");
Button button7=new Button("button7");
//frame.setLayout(new FlowLayout()); 默认center
frame.setLayout(new FlowLayout(FlowLayout.CENTER));
//frame.setLayout(new FlowLayout(FlowLayout.LEFT));//左对齐
frame.setVisible(true);
frame.setSize(200,200);
frame.add(button1);
frame.add(button2);
frame.add(button3);
frame.add(button4);
frame.add(button5);
frame.add(button6);
frame.add(button7);
}
}
运行结果:
二、东西南北中布局
源代码:
package cn.ecut.layout;
import java.awt.*;
/**
* 东西南北中布局
*/
public class TestBorderLayout {
public static void main(String[] args) {
Frame frame=new Frame("TestBorderLayout");
Button east=new Button("East");
Button west=new Button("Wast");
Button north=new Button("East");
Button sourth=new Button("Sourth");
Button center=new Button("Center");
frame.add(east,BorderLayout.EAST);
frame.add(west,BorderLayout.WEST);
frame.add(north,BorderLayout.NORTH);
frame.add(sourth,BorderLayout.SOUTH);
frame.add(center,BorderLayout.CENTER);
frame.setVisible(true);
frame.setSize(400,400);
}
}
运行结果:
三、表格布局
源代码:
package cn.ecut.layout;
import java.awt.*;
/**
* 表格布局
*/
public class TestGridLayout {
public static void main(String[] args) {
Frame frame=new Frame("TestGridLayout");
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(3,2));
frame.add(btn1);
frame.add(btn2);
frame.add(btn3);
frame.add(btn4);
frame.add(btn5);
frame.add(btn6);
frame.pack();//Java函数,如果不设置窗体大小,就要调用此函数,自动匹配大小
frame.setVisible(true);
//frame.setSize(400,400);
}
}
运行结果:
四、布局结合
源代码:
package cn.ecut.layout;
import java.awt.*;
public class TestLayout {
public static void main(String[] args) {
Frame frame=new Frame("Layout");
Button Button1=new Button("Button1");
Button Button2=new Button("Button2");
Button Button3=new Button("Button3");
Button Button4=new Button("Button4");
Button Button5=new Button("Button5");
Button Button6=new Button("Button6");
Button Button7=new Button("Button7");
Button Button8=new Button("Button8");
Button Button9=new Button("Button9");
Button Button10=new Button("Button10");
Panel panel1=new Panel();
panel1.setLayout(new GridLayout(2,1));
panel1.add(Button2);
panel1.add(Button3);
Panel panel2=new Panel();
panel2.setLayout(new GridLayout(2,2));
panel2.add(Button6);
panel2.add(Button7);
panel2.add(Button8);
panel2.add(Button9);
frame.setLayout(new GridLayout(2,3));
frame.add(Button1);
frame.add(panel1);
frame.add(Button4);
frame.add(Button5);
frame.add(panel2);
frame.add(Button10);
frame.setVisible(true);
frame.setSize(800,800);
}
}
运行结果: