3.布局管理


1.流式布局

流式布局可分为:左 中 右 (不填写,默认为居中)

import java.awt.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
?
public class LayoutTest {
   public static void main(String[] args) {
       //创建三个按钮
       Button button1 = new Button("button1");
       Button button2 = new Button("button2");
       Button button3 = new Button("button3");
       //创建一个窗口
       Frame frame = new Frame("布局管理");
       //设置窗口坐标,大小
       frame.setBounds(500,500,500,500);
       //设置窗口可见性
       frame.setVisible(true);
       //按钮添加到窗口
       frame.add(button1);
       frame.add(button2);
       frame.add(button3);
?
       //设置流式布局~默认为居中 可选参数为left cente right
       frame.setLayout(new FlowLayout(FlowLayout.CENTER));
?
       //窗口监听事件
       frame.addWindowListener(new WindowAdapter() {
           @Override
           public void windowClosing(WindowEvent e) {//关闭窗口事件
               System.exit(0);//关闭窗口
          }
      });
?
  }
}

2.东西南北中布局

import java.awt.*;
?
public class TeseBorderLayout {
   public static void main(String[] args) {
       //创建五个按钮
       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");
?
       //创建一个窗口
       Frame frame = new Frame("布局管理");
       //设置窗口坐标,大小
       frame.setBounds(500,500,500,500);
       //设置窗口可见性
       frame.setVisible(true);
?
       frame.add(button1,BorderLayout.EAST);
       frame.add(button2,BorderLayout.WEST);
       frame.add(button3,BorderLayout.SOUTH);
       frame.add(button4,BorderLayout.NORTH);
       frame.add(button5,BorderLayout.CENTER);
  }
}

3.表格布局

import java.awt.*;
?
public class GridTest {
   public static void main(String[] args) {
       //创建四个按钮
       Button button1 = new Button("button1");
       Button button2 = new Button("button2");
       Button button3 = new Button("button3");
       Button button4 = new Button("button4");
?
       //创建一个窗口
       Frame frame = new Frame("布局管理");
       //设置窗口坐标,大小
       frame.setBounds(500,500,500,500);
       //设置窗口可见性
       frame.setVisible(true);
?
       //设置Grid布局~2行2列
       frame.setLayout(new GridLayout(2,2));
?
       //窗口添加按钮
       frame.add(button1);
       frame.add(button2);
       frame.add(button3);
       frame.add(button4);
?
  }
}

fram.pack();,这个函数是java函数,作用:自动选择最优的布局,可写可不写