GUI编程
1、GUI的核心技术:Swing AWT
- 为什么要学习?
- 1、了解MVC架构,了解监听
- 2、可以写出心中想要的一些小工具
2、AWT:抽象的窗口工具
1、包含了很多的类和接口! GUI:图形用户界面
2、元素:窗口,按钮,文本框
3、Java.awt
2.2组件和容器
1、Frame 窗口
package gui;
import java.awt.*;
public class TestFrame {
public static void main(String[] args){
//Frame, 不看JDK ,看源码
Frame frame = new Frame("我的第一个java图形界面窗口");
//需要设置可见性
frame.setVisible(true);
//设置窗口大小
frame.setSize(400,400);
//设置背景颜色 Color
//frame.setBackground(new Color(109, 179, 38));
frame.setBackground(Color.blue);
//弹出的初始位置
frame.setLocation(200,200);
//设置大小固定
frame.setResizable(false);//默认是可变大小,true
}
}
问题:发现窗口关闭不掉,停止Java程序
封装代码:new多个窗口
package gui;
import java.awt.*;
public class TestFrame02 {
public static void main(String[] args) {
//展示多个窗口
MyFrame myFrame01 = new MyFrame(100, 100, 300, 300, Color.blue);
MyFrame myFrame02 = new MyFrame(100, 400, 300, 300, Color.pink);
MyFrame myFrame03 = new MyFrame(400, 100, 300, 300, Color.green);
MyFrame myFrame04 = new MyFrame(400, 400, 300, 300, Color.red);
}
}
class MyFrame extends Frame {
static int id = 0;//可能存在多个窗口,需要一个计数器
public MyFrame(int x,int y,int w,int h,Color color){//构造器
super("myframe+"+(++id));//再回顾以下super的知识
setBounds(x,y,w,h);//传入坐标x y 窗口的宽高
setVisible(true);//窗口可见
setBackground(color);
}
}