事件处理机制
Java
的事件处理机制采用的是“委派事件模型”(即事件发生的地方和事件处理的地方位置时不一样的,是委派出去处理的),当事件发生时,产生事件的对象,会把此“信息”(这里的信息实际上就是java.awt.event
事件类库里某个类所创建的对象,称之为事件的对象)传递给“事件的监听者”处理
事件源:事件源是一个产生事件的对象,比如按钮,窗口等
事件:事件就是承载事件源状态改变时的对象,比如当键盘事件、鼠标事件、窗口事件等待,会生成一个事件对象,该对象保存着当前事件的很多信息,如
KeyEvent
对象有含有 被按下的Code
值。java.awt.event
包和javax.swing.event
包中定义了各种事件类型常见的事件类型:
事件类 描述 ActionEvent
通常在按下按钮,或双击一个列表项或选中某个菜单时发生 AdjustmentEvent
当操作一个滚动条时发生 ComponentEvent
当一个组件隐藏,移动,改变大小时发生 ContainerEvent
当一个组件从容器中加入或者删除时发生 FocusEvent
当一个组件获得或失去焦点时发生 ItemEvent
当一个复选框或列表项被选中时,当一个选择框或选择菜单被选中 KryEvent
当从键盘按键被按下,松开时发生 MouseEvent
当鼠标被拖动,移动,点击,按下时发生 TextEvent
当文本区和文本域的文本发生改变时发生 WindowEvent
当一个窗口激活,关闭,失效,恢复,最小化时发生 事件监听接口:
- 当事件源产生一个事件,可以传送给事件监听者处理
- 事件监听者实际上就是一个类,该类实现了某个事件监听器接口,如
MyPanle
就是一个类,它实现了KeyListener
接口,可以作为一个事件监听者,对接受到的事件进行处理 - 事件监听器接口有多种,不同的事件监听器接口可以监听不同的事件,一个类可以实现多个监听接口
- 这些接口在
java.awt.event
包和javax.swing.event
包中定义