`
- 浏览:
154172 次
- 性别:
- 来自:
js
-
- Java中的事件监听是整个Java消息传递的基础和关键。牵涉到两类对象:事件发生者和事件监听者。事件发生者是事件的起源,它可以是一个按钮,编辑框等。事件监听者就是事件的接受者,如果要想接收某个事件,它必须对该事件的发生者说一声:嗨,哥们,有事吱一声。这个过程相当与在事件发生者那儿注册了一下。当事件发生者真的有事件发生时,就会对所有对该事件注册的所有监听者送一份参考消息说:有内幕,有内幕!!事件监听者听到后,拿过来看一下,根据这份报纸各干各的事。参考消息这份报纸就是java中的事件对象。
- 具体实现呢,可以看看Button的源码。可能不好看得懂。那好我们仿照侯捷先生的作法,来模拟一个这样的事件传递:
- 定义一个自己的事件:
-
public MyEvnet{
-
private int value;
-
public int getValue(){return value;}
-
public void setValue(int value){this.value=value;}
- }
- 做一个接口 Listenable
-
interface Listenable{
-
public void enventChanged(MyEvent e);
- }
- 做一个事件发生者,此类中保存有所有在这里报到的类的引用
-
public MySource{
-
int value;
-
Vector listeners=new Vector();
-
public addListener(Listenable l){listeners.add(l);}
-
public void setValue(int value){
-
this.value=value;
- fireChanged();
- }
-
private void fireChanged(){
-
MyEvent e=new MyEvent();
- e.setValue(value);
-
for(int i=0;i <listeners.size();i++){
- Listenable l=(Listenable)listeners.elementAt(i);
- l.eventChanged(e);
- }
- }
- }
- 好了,如果谁想监听MySource的value值改变了,就在MySource哪儿注册一下,然后写消息处理代码,就可以了,我们定义这样一个监听者:
-
MyListener implements Listenable{
-
public void eventChanged(MyEvent e){
-
System.out.println( "value changed to: "+e.getValue());
- }
- }
- 这样,当MySource的value真的改变时,就会触发此方法。
-
- 然后在其他代码中把MyListener注册到MySource:
-
MySource ms=new MySource();
-
MyListener ml=new MyListener();
- ms.addListener(ml);
-
ms.setValue(10);
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
在Java编程语言中,事件监听是构建用户界面(UI)应用程序的一个关键概念。它允许程序对用户的行为作出响应,如点击按钮、选择菜单项或在文本框中输入文本。Java自定义事件监听允许开发者创建自己的事件类型并相应地...
### Java GUI 事件监听知识点详解 #### 一、概述 在Java编程中,图形用户界面(GUI)的设计是一项重要的技能。对于初学者来说,掌握如何创建一个简单的界面,并且能够处理用户交互事件是非常必要的。本篇文章将...
JAVA事件监听器是JAVA语言中的一种机制,它允许程序员在特定的事件发生时执行某些操作。事件监听器的实现方式有多种,本篇文章将介绍四种常见的事件监听器实现方式:自身类作为事件监听器、外部类作为事件监听器、...
本文将详细介绍Java中事件监听器的四种实现方式:自身类作为事件监听器、外部类作为事件监听器、匿名内部类作为事件监听器以及内部类作为事件监听器。 #### 一、自身类作为事件监听器 自身类作为事件监听器是最...
Java监听键盘鼠标全局事件 Java监听键盘鼠标全局事件是指使用Java语言来监听和处理键盘和鼠标事件的技术。这项技术广泛应用于游戏开发、自动化测试、屏幕阅读器等领域。下面是Java监听键盘鼠标全局事件的详细知识点...
Java事件监听器即一组动作接口。如键盘事件KeyEvent对应的接口是: public interface KeyListener extends EventListener { public void keyPressed(KeyEvent ev); public void keyReleased(KeyEvent ev); public ...
监听器模式是Java设计模式中的一种行为型模式,主要用于监听某些事件的发生,并在事件发生时自动执行预定义的操作。在实际开发中,监听器模式可以用于多种场景,如UI事件处理、事件广播、异步通知等。 在监听器模式...
在Java编程中,监听器...在提供的压缩包文件“05_监听器”中,可能包含更多关于Java监听器的实例代码和讲解,可以帮助深入理解这一主题。建议查看这些文件,动手实践并调试代码,以便更好地掌握Java监听器的使用。
Java监听器是一种非常重要的设计模式,在Java中广泛应用于事件驱动编程。监听器模式的主要思想是将事件源和事件处理器分离,使得事件源可以独立于事件处理器,提高了系统的灵活性和可扩展性。 Java监听器的实现...
java事件监听机制 java中的事件机制的参与者有3种角色: .event object:就是事件产生时具体的“事件”,用于listener的相应的方法之中,作为参数,一般存在与listerner的方法之中
#### 二、Java监听器 监听器是实现特定接口的类,用于接收并响应来自事件源的事件。监听器通常需要实现特定接口中定义的方法,这些方法会在相应的事件发生时被调用。例如,对于按钮点击事件,监听器需要实现`...
本资源介绍了java图形界面开发中的事件监听及事件处理的相关内容,对于学习的相关人员有一定的帮助。
在Java编程中,时间监听是一项重要的任务,它允许程序对系统时间的变化进行反应或执行特定操作。这通常通过注册监听器来实现,监听器是一种回调机制,当特定事件发生时,它会被调用。在Java中,我们可以使用`java....
当你将一个类用作事件监听器时,你已经设置好一个特定的事件类型,它会用该类进行监听。接下来的操作是:一个匹配的监听器必须被加入到该组件中 组件被创建之后,可以在组件上调用如下方法来将监听器与它联系起来 ...
java开发的监听键盘事件,获取并显示键盘事件
下面是 Java Swing 中常用的事件和监听器接口。 1. AncestorEvent 和 AncestorListener AncestorEvent 是一种报告给子组件的事件,该事件指示子组件的添加、移除或移动操作。AncestorListener 是对应的监听器接口...
本文将详细解析Java事件处理机制中事件监听器的四种实现方式:自身类作为事件监听器、外部类作为事件监听器、匿名内部类作为事件监听器以及内部类作为事件监听器。 1. **自身类作为事件监听器** 在自身类作为事件...
在Java编程中,图片绘制和鼠标事件监听是两个重要的概念,尤其对于开发用户界面和交互式应用程序至关重要。本文将深入探讨这两个主题,并结合一个名为"Plane"的示例,帮助初学者理解如何在Java中实现这些功能。 ...
【JAVA USB监听器】是一种基于Java编程语言实现的软件工具,其主要功能是对USB设备进行实时监控,当USB设备插入时,能够自动检测并复制指定类型的文件到预先设定的目录中。这种工具对于需要频繁从USB设备中获取特定...
【标题】:“Windchill交流第三篇:Windchill中的事件监听” 在Windchill系统中,事件监听是一项核心功能,它允许系统在特定事件发生时执行预定义的逻辑或操作。这一篇我们将深入探讨Windchill如何实现事件监听,...