面板
panel ->面板 可以看成是一个空间,但是不能单独存在
package test02;
import java.awt.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
public class Test01 {
public static void main(String[] args) {
Frame frame = new Frame();
Panel panel = new Panel();
frame.setVisible(true);
//设置布局
frame.setLayout(null);//Layout布局
//设置坐标
frame.setBounds(300,300,500,500);
frame.setBackground(Color.pink);//如果需要自己设定颜色 需要new Color();
//panel设置坐标,相对于frame
panel.setBounds(50,50,400,400);
panel.setBackground(Color.BLUE);
//给frame添加面板
frame.add(panel);
//监听事件 监听窗口关闭事件 System.exit(0);
//适配器模式:
frame.addWindowListener(new WindowAdapter() {//Adapter->适配器 重音在d上
//窗口点击关闭时需要做的事情
@Override
public void windowClosing(WindowEvent e) {
//改成 窗口关闭时结束程序
System.exit(0);
// super.windowClosing(e);
}
});
}
}
布局管理器
流式布局
package test02;
import java.awt.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
public class FlowLayout {
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");
//设置为流式布局
frame.setLayout(new java.awt.FlowLayout());
frame.setSize(300,300);
frame.add(button1);
frame.add(button2);
frame.add(button3);
frame.setVisible(true);
frame.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}
}
东南西北中
package test02;
import java.awt.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
public class TestBorderLayout {
public static void main(String[] args) {
Frame frame = new Frame("TestBorderLayout");
Button east = new Button("east");
Button west = new Button("west");
Button south = new Button("south");
Button north = new Button("north");
Button center = new Button("center");
frame.add(east,BorderLayout.EAST);//BorderLayout边界布局管理器,东南西北中
frame.add(west,BorderLayout.WEST);
frame.add(south,BorderLayout.SOUTH);
frame.add(north,BorderLayout.NORTH);
frame.add(center,BorderLayout.CENTER);
frame.setSize(300,300);
frame.setVisible(true);
frame.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}
}
表格布局
package test02;
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);
}
}