待解决问题:
1.设计模式:适配器模式
2.frame.setLayout(null);
package GUI;
import javax.swing.*;
import java.awt.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
// Panel 可以看成一个空间,不能单独存在,可以嵌套在Frame中
public class TextPanel {
public static void main(String[] args) {
Frame frame = new Frame();
Panel panel = new Panel();
// 设置布局,如果不设置,Frame不显示
frame.setLayout(null);
// 设置 Frame大小,颜色,可见性
frame.setBounds(500,500,500,500);
frame.setBackground(new Color(190, 204, 131));
// 设置 Panel大小,颜色,可见性
panel.setBounds(50,50,400,400);
panel.setBackground(new Color(253, 200, 155));
// 将 Panel嵌入到 Frame中
frame.add(panel);
frame.setVisible(true);
// 监听窗口关闭事件 System.exit(0);
// 适配器模式
frame.addWindowListener(new WindowAdapter() { // 实现了WindowListener接口
@Override
public void windowClosing(WindowEvent e) {
// super.windowClosing(e);
System.exit(0);
}
});
frame.addWindowListener(new WindowListener() {
@Override
public void windowOpened(WindowEvent e) {
}
@Override
public void windowClosing(WindowEvent e) {
}
@Override
public void windowClosed(WindowEvent e) {
}
@Override
public void windowIconified(WindowEvent e) {
}
@Override
public void windowDeiconified(WindowEvent e) {
}
@Override
public void windowActivated(WindowEvent e) {
}
@Override
public void windowDeactivated(WindowEvent e) {
}
});
}
}
原文:https://www.cnblogs.com/CH0701/p/15012389.html