本文共 1151 字,大约阅读时间需要 3 分钟。
在Java中,事件处理机制被分为“事件源”、“事件”、“监听器”这三部分,每一部分负责一个任务,完整地结合在一起就构成了Java事件的基本框架。
事件是一种很好的让界面和用户进行交互的手段。
当用户和界面交互时,经常会进行一些操作,例如单击按钮,按下指定键盘键,都会触发事件。
事件触发后会告诉程序发生的事件,程序会根据不同的事件做出反应。在事件的发生和响应的过程中需要两个对象,事件源和事件监听器。
1)事件源就是触发事件的控件,这里包括按钮、文本框、窗体等多种控件。但是不同的控件存在不同的事件,事件信息被封装在事件对象中。
2)事件监听器是指实现专门的监听接口的类的对象。每个事件都有对应的监听接口,同时在该接口中给出了处理事件的方法。在编写监听器时需要事件监听接口,
同时实现其中的方法,在方法中编写触发事件后执行的程序。在编写程序时,还需要将监听器注册给事件源,这样才能执行事件。
3)事件源与监听器之间是多对多的关系,一个事件源可以对应多个监听器,一个监听器可以为多个事件源服务。
package com.whut.sw;
import java.awt.event.ActionEvent; import java.awt.event.ActionListener;import javax.swing.*;
public class Swing12 extends JFrame{
JButton jb = new JButton(); int i=0; //定义构造器 public Swing12(){ this.setTitle("创建按钮"); jb.setText("按钮按下了0次"); jb.setMnemonic('a'); //设置按钮的助记符 this.add(jb); //为按钮注册监听器 jb.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { Swing12.this.jb.setText("按钮按下了"+(++i)+"次"); } }); this.setBounds(300, 260, 300, 200); this.setVisible(true); } public static void main(String[] args) { Swing12 s = new Swing12();}
}
-----------------------------------------------------------------------------------------------------------
结果如下: