AvA 事件处理 辽宁经济职业技术学院信息系 硕士、副教授陈英 JAVA
事件处理 辽宁经济职业技术学院信息系 硕士、副教授 陈英
AvA 事件驱劭程序 敲击健盏 鼠标移 操作系统 Java库类 事悴 用戶程秀方区方区 JAVA
事件驱动程序 操作系统 Java库类 事件 用户程序 方法 方法 方法 方法 鼠标移 动 敲击键盘
黑什么是事件? 事件一描述发生了什么的对象,即用户用于交 互而产生的键盘或鼠标动作。 事件源一事件的产生器(如按钮) 事件处理器一接收事件、解释事件并处理用户 交互的方法(响应用户的动作称为处理事件) 如果用户在用户界面层执行了一个动作(鼠标点 击和按键),这将导致一个事件的发生。事件是 描述发生了什么的对象。存在各种不同类型的 事件类用来描述各种类型的用户交互 JAVA
什么是事件? 事件-描述发生了什么的对象,即用户用于交 互而产生的键盘或鼠标动作。 事件源-事件的产生器(如按钮)。 事件处理器-接收事件、解释事件并处理用户 交互的方法(响应用户的动作称为处理事件) 如果用户在用户界面层执行了一个动作(鼠标点 击和按键),这将导致一个事件的发生。事件是 描述发生了什么的对象。存在各种不同类型的 事件类用来描述各种类型的用户交互
AvA 什么是事件源? 事件源是一个事件的产生者。例如,在 Button组件 上点击鼠标会产生以这个 Button为源的一个 Action Event.这个 Action Even实例是一个对象, 它包含关于刚才所发生的那个事件的信息的对象 这些信息包括: 1) getAction Command-返回与动作相关联的命令名称 2) GetModifiers一返回在执行动作时持有的修饰符。 事件源拥有自己的方法,允许我们向其注册事件 监听器。 当事件源产生了一个事件后,事件源就会给为那 个事件进行了注册的所有监听器对象发送通知
什么是事件源? 事件源是一个事件的产生者。例如,在Button组件 上点 击鼠标会 产生以这 个 Button 为 源 的一 个 ActionEvent. 这个ActionEvent实例是一个对象, 它包含关于刚才所发生的那个事件的信息的对象。 这些信息包括: 1) getActionCommand-返回与动作相关联的命令名称。 2) GetModifiers-返回在执行动作时持有的修饰符。 事件源拥有自己的方法,允许我们向其注册事件 监听器。 当事件源产生了一个事件后,事件源就会给为那 个 事件进行了注册的所有监听器对象发送通知
AvA 事件监听器 °要创建一个事件监听器的类,这个类必 须实现监听器接口。所有事件监听器接 口都扩充 java util. Eventobject接口。但 是这个接口没有声明任何方法,而只是 用来标志事件监听器接口,并允许 Eventlistener变量存储任何事件监听器 对象的引用 JAVA
事件监听器 要创建一个事件监听器的类,这个类必 须实现监听器接口。所有事件监听器接 口都扩充java.util.EventObject接口。但 是这个接口没有声明任何方法,而只是 用来标志事件监听器接口,并允许 EventListener变量存储任何事件监听器 对象的引用
AvA AWT中的事件处理工作机制 个监听器对象是一个实现了专门的监 听器接口的类的实例 个事件源是一个能够注册监听器并且 为它们发送事件对象的对象 当事件发生时,事件源会把事件对象发 送给注册的全部监听器。 ○监听器对象会使用事件对象中的信息决 定对事件的反应。 JAVA
AWT中的事件处理工作机制 一个监听器对象是一个实现了专门的监 听器接口的类的实例。 一个事件源是一个能够注册监听器并且 为它们发送事件对象的对象。 当事件发生时,事件源会把事件对象发 送给注册的全部监听器。 监听器对象会使用事件对象中的信息决 定对事件的反应
AvA 事件处理过程 单击按 public void make Button(String name, final Color background Color) JButton button =new JButton(name); add(button); OK button. addIction Listener(new 生成 Action Listener public void action Performed (Action Event event) ctio 「传递给>( setBackground( backgroundcolor repaint; } JAVA
事件处理过程 ActionEvent 对象 public void makeButton(String name, final Color backgroundColor) { JButton button = new JButton(name); add(button); button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { setBackground(backgroundColor); repaint(); } }); } 单 击 按 钮 OK 生 成 传递给
JAvA Java util. Eventobject 在Java这种面向对象语言中,关于事件的 信息被封装在一个事件对象中。 o所有的对象都从 javautil. Eventobject派生 而来。 每个事件类型都有一个子类,如 Action Event/A Windows Event 不同的事件源能够产生不同种类的事件。 tion ey 而一个窗口能够发送 Windows even对象 处理事件的核心是重写处理事件的方法 JAVA
java.util.EventObject 在Java这种面向对象语言中,关于事件的 信息被封装在一个事件对象中。 所有的对象都从java.util.EventObject派生 而来。 每个事件类型都有一个子类,如 ActionEvent和WindowsEvent. 不同的事件源能够产生不同种类的事件。 例如一个按钮能够发送ActionEvent对象, 而一个窗口能够发送WindowsEvent对象。 处理事件的核心是重写处理事件的方法
淮册事件盛听器 AvA 在事件源对象中注册监听器对象的方法如下 eventsourceobject. add Event Listener(eventListenterobject); 例如: Action Listener listener= JButton button= new jButton(“oK”) button addEventListener(listener)i ◎现在只要按钮中产生一个“动作事件(按钮被按下)”, listener对象就会得到通知。 ○监听器对象所属的类必需要实现合适的接口。而实现该接 意味着要提供接口中方法的实现。 JAVA
注册事件监听器 在事件源对象中注册监听器对象的方法如下: eventSourceObject.addEventListener(eventListenterObject); 例如:ActionListener listener = ……; JButton button = new JButton(“OK”); button. addEventListener(listener); 现在只要按钮中产生一个“动作事件(按钮被按下)”, listener对象就会得到通知。 监听器对象所属的类必需要实现合适的接口。而实现该接口 意味着要提供接口中方法的实现
多 事件源、事件盛 Lava 事件通知 听器和事件对 MyPanel 的协作吴系 new JButton new MYListener addIction Listener action Performed JAVA
事件通知 事件源、事件监 听器和事件对象 的协作关系 addActionListener MyPanel JButton MyListener actionPerformed new new