JAVA--GUI:事件监听机制
程序员文章站
2022-03-26 14:40:37
...
组成
事件监听机制组成:
1.事件源(组件)
2.监听器(Listener)
3.事件(Event)
4.事件处理(引发事件后处理方式)
事件源:就是Java awt包或者swing包中的那些图形界面组件。
事件:每一个事件源都有自己特有的对应事件和共性事件。
监听器:将可以触发某一个事件的动作(不只一个动作)都已经封装到了监听器中。
以上三者,在java中都已经定义好了,直接获取其对象来用就可以了。
我们需要做的是对产生的动作进行处理,即事件处理。
常用方法
void addWindowListener(WindowListener l):添加指定的窗口侦听器,以从此窗口接收窗口事件。
WindowAdapter
接收窗口事件的抽象适配器类。此类中的方法为空。此类存在的目的是方便创建侦听器对象。
扩展此类可创建 WindowEvent 侦听器并为所需事件重写该方法。(如果要实现 WindowListener 接口,则必须定义该接口内的所有方法。此抽象类将所有方法都定义为 null,所以只需覆写需要的事件定义方法。)
示例
import java.awt.*;
import java.awt.event.*;
class AwtDemo{
public static void main(String[] args){
Frame f=new Frame("my awt"); // 初始化Frame组件,并设置标题
f.setSize(500,400); // 设置组件长宽
f.setLocation(300,200); // 设置组件位置
f.setLayout(new FlowLayout()); // 设置流式布局,默认为边界布局
Button b=new Button("按钮"); // 初始化Button组件,并设置标题
f.add(b); // 把Button添加到Frame组件中
// 为Frame组件添加事件处理
f.addWindowListener(new WindowAdapter(){ // 添加匿名内部类,重写WindowAdapter内的方法,接收相对应的监听(Listener)或适配器(Adapter)
public void windowClosing(WindowEvent e){ // 接收相对应的事件Event
System.out.println("关闭窗口!");
System.exit(0);
}
public void windowActivated(WindowEvent e){
System.out.println("**窗口!");
}
public void windowOpened(WindowEvent e){
System.out.println("打开窗口!");
}
});
f.setVisible(true); // 使Frame组件显示
}
}
下一篇: Three.js骨骼笔记