[Core Java笔记]初学事件处理

Posted leslieleeeee

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[Core Java笔记]初学事件处理相关的知识,希望对你有一定的参考价值。

VB的事件处理:每个GUI组件都响应固定的事件集,不可能改变其事件集.

C的事件处理:编写代码,可读性差,响应事件不受限制.

Java的事件处理:(VB与C的折中)事件委托模型.

 

Java把事件的相关信息都封装在事件对象中.(例如button,按钮等等)

所有事件的始祖类为java.util.EventObject.

AWT事件处理重要的参与对象:

  (1)事件监听器:实现了特定监听器接口的对象.(可以分析事件)

  (2)事件源:注册了监听器对象,事件发生时发送事件对象给他 .(捕获自己管理的事件,传给监听器)

    当事件发生时,事件源把事件对象传递给 所有注册的监听器. (事件源捕获事件,传给监听器)

    事件监听器利用事件对象中的信息决定如何对事件做出相应.(监听器分析事件,作出响应)

技术分享图片
1 ActionListener lsner = .....;
2 
3 JButton btn = new JButton("OK");
4 
5 btn.addActionListener(lsner);    //只要一按按钮,lsner就会得到通告
View Code

实现ActionListener接口的监听器类必须有actionPerformed方法:

技术分享图片
 1 class MyListener implements ActionListener
 2 
 3 {
 4 
 5   ...
 6 
 7   public void actionPerformed(Actionevent event)
 8 
 9   {      //只要用户点击按钮,JButton就会创建一个ActionEvent对象,调用此方法传递事件对象.
10 
11     //reaction to button click goes here
12 
13     ....
14 
15   }
16 
17 }
View Code

 

以上是关于[Core Java笔记]初学事件处理的主要内容,如果未能解决你的问题,请参考以下文章

Java初学者笔记五:泛型处理

java.util.MissingResourceException: Can't find bundle for base name init, locale zh_CN问题的处理(代码片段

Python Tornado初学笔记之表单与模板

Java学习笔记7.2.1 事件处理 - Swing事件处理机制

Java学习笔记7.2.1 事件处理 - Swing事件处理机制

Java初学——面向对象异常