Java事件处理学习笔记

Java事件处理学习与Action对象解析

Java事件处理学习

 

当操作系统为用户的一个动作(例如:点击鼠标)产生一个事件,和操作系统通信的那部分AWT会收到一个通知并且把它转换成一个AWT Event。然后AWT将这些事件放入事件队列中。一些AWT派遣这些事件给listeners,步骤如下:

1.  从事件队列中去事件;

2.  给这个事件找到匹配的listener

3.  为这个事件调用适合的listener过程

 

相关概念:

1.  Event Source:触发事件的源组件。其中有能够登记事件侦听对象的方法。当Source的一个事件发生的时候,Source将这个事件(Event)的消息传递给所有这个事件的侦听对象(Event Listener)。

2.  Event:事件对象。所有有关事件的信息被封装在一个事件对象中。在java中,所有事件对最终继承自java.util.EventObject 对象。当然每一种具体的事件有自己的继承自的事件对象,例如: ActionEvent WindowEvent.java.awt包中。

3.  Event Listener:事件侦听对象。Listener 对象利用传给它的event 对象的信息决定他们执行什么动作。在java.util包中。

4.  Action:如果你有两个或者更多组件执行同一个函数,考虑使用Action 对象去实现这个函数。Action对象是一个不仅提供活动事件处理并且集成了触发这个事件的组件(如:toolbar buttonmenu itemscommon buttons text fields)的描述的处理的action ListenerSwing包提供了非常实用的机制用了封装命令并且将他们和多种event source联系起来:Action 接口。Action interface继承自ActionListener interface ,因此你可以在希望使用ActionListener对象的任何时候使用Action对象

Action对象封装了下面内容:命令的描述、处理这些命令的参数;

 

Action interface 有下面方法:

 

void actionPerformed(ActionEvent event)

void setEnabled(boolean b)

boolean isEnabled()

void putValue(String key, Object value)

Object getValue(String key)

void addPropertyChangeListener(PropertyChangeListener listener)

void removePropertyChangeListener(PropertyChangeListener listener)

 

 

事件的种类:

Semantic Events :用户触发组件可以发生的event。如:ActionListener

Low-Level Events:使这成为可能的event。如:Mouse Event

 

Container Event

Foucs Event

Window Event

Paint Event

Input Event

Key Event

Mouse Event

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值