Swing 事件模型
来源:互联网 发布:js获取某个class 编辑:程序博客网 时间:2024/05/22 12:56
在Swing的事件模型中,组件可以发起(触发)一个事件。每种事件的类型由单独的类表
示。当事件被触发时,它将被一个或多个“监听器”接收,监听器负责处理事件。所以,
事件发生的地方可以与事件处理的地方分离开。既然是以这种方式使用Swing组件,那么
就只需编写组件收到事件时将被调用的代码,所以这是一个分离接口与实现的极佳例子。
所谓事件监听器,就是一个“实现了某种类型的监听器接口的”类的对象。所以程序员要
做的就是,先创建一个监听器对象,然后把它注册给触发事件的组件。这个注册动作是通
过调用触发事件的组件的addXXXListener( )方法来完成的,这里用“XXX”表示监听器
所监听的事件类型。通过观察“addListener”方法的名称,就可以很容易地知道其能够处
理的事件类型,要是你把所监听事件的类型搞错了,在编译期间就会发现有错误。在本章
的后面将会学习到,JavaBean也是使用“addListener”方法的名称来判断某个Bean所
能处理的事件类型的。
然后,所有的事件处理逻辑都将被置于监听器类的内部。要编写一个监听器类,唯一的要
求就是必须实现相应的接口。你可以创建一个全局的监听器类,不过有时写成内部类会更
有用。这不仅是因为将监听器类放在它们所服务的用户接口类或者业务逻辑类的内部时,
可以在逻辑上对其进行分组;而且还因为(你将在后面看到)内部类对象含有一个对其外
示。当事件被触发时,它将被一个或多个“监听器”接收,监听器负责处理事件。所以,
事件发生的地方可以与事件处理的地方分离开。既然是以这种方式使用Swing组件,那么
就只需编写组件收到事件时将被调用的代码,所以这是一个分离接口与实现的极佳例子。
所谓事件监听器,就是一个“实现了某种类型的监听器接口的”类的对象。所以程序员要
做的就是,先创建一个监听器对象,然后把它注册给触发事件的组件。这个注册动作是通
过调用触发事件的组件的addXXXListener( )方法来完成的,这里用“XXX”表示监听器
所监听的事件类型。通过观察“addListener”方法的名称,就可以很容易地知道其能够处
理的事件类型,要是你把所监听事件的类型搞错了,在编译期间就会发现有错误。在本章
的后面将会学习到,JavaBean也是使用“addListener”方法的名称来判断某个Bean所
能处理的事件类型的。
然后,所有的事件处理逻辑都将被置于监听器类的内部。要编写一个监听器类,唯一的要
求就是必须实现相应的接口。你可以创建一个全局的监听器类,不过有时写成内部类会更
有用。这不仅是因为将监听器类放在它们所服务的用户接口类或者业务逻辑类的内部时,
可以在逻辑上对其进行分组;而且还因为(你将在后面看到)内部类对象含有一个对其外
部类对象的引用,这就为跨越类和子系统边界的调用提供了一种优雅的方式。
- Swing 事件模型
- java界面编程(4) ------ Swing事件模型
- TypedMessage 模式 与 java Swing 事件驱动模型
- GUI界面,Swing、JTextPane面板、事件驱动模型(监听器)
- Swing 模型过滤
- Swing 模型过滤
- Swing线程模型
- [Java]Swing基础编程【2】事件模型 持有对方的引用
- swing事件处理
- swing鼠标事件
- swing键盘事件处理
- Swing中的鼠标事件
- Swing事件响应机制
- Swing事件处理
- 关于swing的事件
- java swing 键盘事件
- Swing鼠标事件
- Swing事件处理
- Android传感器之加速度传感器
- 通过Intent实现返回桌面
- 配置 vim 为php开发工具
- delphli js unicode
- C/C++中计算程序运行时间
- Swing 事件模型
- 快速排序
- 打开共享之门成就成功之路
- 解决Windows 2008驱动安装失败
- Android传感器之距离传感器
- ThinkPHP 多语言
- 百度地图轨迹回放 快进 后退 停止 播放 暂停 的实现
- (step6.2.4)hdu 2680(Choose the best route——最短路径)
- 手动打造apk利用ANDROID-8219321漏洞(Master Key)绕过android签名校验