JAVASE----17----GUI
1,简介
首先上图
一段简单创建界面的代码:
package Awt;
import java.awt.Button;
import java.awt.FlowLayout;
import java.awt.Frame;
public class AwtDemo {
/**
创建图形化界面:
1,创建frame窗体
2,对窗体进行基本设置,比如位置,大小,布局
3,定义组件
4,将组件通过窗体的add方法添加到窗体中
5,让窗体显示,通过setVisible(true)
*/
public static void main(String[] args) {
Frame f=new Frame("my awt");
f.setSize(500,400);
f.setLocation(300,200);
//窗体弹出位置
f.setLayout(new FlowLayout());
Button b=new Button("按钮");
f.add(b);
f.setVisible(true);
}
}
结果:
2,事件监听机制
事件监听机制的特点:
1,事件源。
2,事件。
3,监听器。
4,事件处理。
事件源: 就是awt包或者swing包中的那些图形界面组件。
事件:每一个事件源都有自己特有的对应事件和共性事件。
监听器:将可以触发某一个事件的动作(不止一个动作)都已封装进了监听器中。
以上三者,在java中都已经定义好了,直接获取其对象来用就可以了。
我们要做的事情是,就是对产生的动作进行处理。
窗体监控,对窗体的X按钮进行关闭事件处理
public static void main(String[] args) {
Frame f=new Frame("my awt");
f.setSize(500,400);
f.setLocation(300,200);
//窗体弹出位置
f.setLayout(new FlowLayout());
Button b=new Button("按钮");
f.add(b);
//这里直接写匿名内部类,即MyWin
f.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent arg0) {
System.exit(0);
}
});
f.setVisible(true);
}
// class MyWin implements WindowListener
// {
// //需要覆盖7个方法,可是只用到了关闭动作。其他动作没用到,但是必须复写
// }
//因为WindowListener的子类WindowAdapter已经实现了WindowListener接口。
//并覆盖了其中所有方法,那么只需要继承WindowAdapter 覆盖需要的方法即可。
class MyWin extends WindowAdapter
{
@Override
public void windowClosing(WindowEvent arg0) {
System.exit(0);
}
}
}
点击窗体上的X后,程序会退出

浙公网安备 33010602011771号