`
Ai臣子
  • 浏览: 4960 次
  • 性别: Icon_minigender_1
文章分类
社区版块
存档分类
最新评论

事件机制(监听器使用)

阅读更多
1.  像以前写的代码,运行出来只是界面,或结果。而当我们对其作出动作是它没有任何反 应,就像死人一样。。但是有了监听器,我们就可以让它活过来!

  1.1在java中,给事件源加监听器的格式是:事件源.add****Listener(监听器对象)。
      比如你给按钮加监听器:
    //实例化一个按钮
	JButton jb1 = new JButton("发射");
		this.add(jb1);
                  //实例化动作监听器
            BuAction ba = new BuAction(pt);
		//给按钮加上监听器
	jb1.addActionListener(ba);

其中的 BuAction 就是ActionListener抽象类的实现类。必须重写其中的方法,这样当你点击jb1这个按钮的时候就会执行其中的方法:
public class 文件名 implements java.awt.event.ActionListener{   
  public void actionPerformed(ActionEvent e){}   
 } 



  1.2在事件机制中会常用到不同类中进行传值。而一般是用构造器进行传参!
      比如在做画板的时候,需要在窗体类中获取画布之后,再传给监听器类,让其实现画画功能。

    
//设置窗体可见
		this.setVisible(true);
		
		//在窗体可见之后,获取窗体上的画布对象
		Graphics g = this.getGraphics();

切记是在窗体可见之后才能获取画布!!!!
      
ActionListener dl = new DrawListener(g);
		//给按钮对象源添加动作监听器方法,绑定事件处理类的对象dl
		jb1.addActionListener(dl);


实例化对象带上参数g,再在监听器类中写上构造方法,这样就把参数g传过去了:
//定义全局变量,方便下面好调用
	private Graphics g;
	/**
	 * 传入参数g的构造器
	 * @param g画布
	 */
	public DrawListener(Graphics g) {	
		this.g = g;
	}

        事件机制中参数传递主要是使用构造方法进行传递, 一般传递的都是地址!!!!
分享到:
评论

相关推荐

    事件处理监听器

    总的来说,事件处理监听器是程序响应用户交互的关键机制。通过正确设置和使用监听器,我们可以使应用程序更加互动和用户友好。在压缩包文件“事件处理”中,可能包含了各种示例代码,演示了如何在实际项目中应用这些...

    js事件监听机制(事件捕获)总结

    使用addEventListener方法为元素添加事件监听是推荐的方式,因为它允许为同一个元素的同一个事件添加多个监听器,而且不会覆盖之前添加的监听器。而直接在对象上赋值事件处理器的方式则有限制,通常只能绑定一个函数...

    JAVA事件监听器的四种实现方式

    JAVA事件监听器是JAVA语言中的一种机制,它允许程序员在特定的事件发生时执行某些操作。事件监听器的实现方式有多种,本篇文章将介绍四种常见的事件监听器实现方式:自身类作为事件监听器、外部类作为事件监听器、...

    Java事件处理机制- 事件监听器的四种实现方式

    本文将详细解析Java事件处理机制中事件监听器的四种实现方式:自身类作为事件监听器、外部类作为事件监听器、匿名内部类作为事件监听器以及内部类作为事件监听器。 1. **自身类作为事件监听器** 在自身类作为事件...

    使用Spring事件机制实现异步的方法

    在使用Spring事件机制实现异步的方法时,通常需要将事件监听器添加到ApplicationContext中。在上面的代码中,使用@SpringBootApplication的addListeners方法将MyListener添加到ApplicationContext中。 使用@Event...

    android 外部类作为事件监听器类

    在Android开发中,事件监听器(Event Listeners)是实现用户交互和响应各种事件的关键机制。标题提到的“android 外部类作为事件监听器类”是指将一个非匿名类(外部类)作为事件处理的对象,这在某些情况下可能是...

    我收集的servlet中事件监听器机制we吧xml配置详解

    在Servlet中,事件监听器机制和`web.xml`配置是两个关键的概念,它们极大地增强了应用的灵活性和可扩展性。 事件监听器机制在Servlet中扮演着重要角色,它允许程序员对特定的事件进行响应,例如请求到达、会话创建...

    java中的事件机制

    6. **移除监听器(Removing Listeners)**:当不再需要监听特定事件时,可以使用`removeXXXListener()`方法从事件源上移除监听器。 **Java AWT 和 Swing 事件处理:** 在AWT和Swing库中,提供了丰富的事件类和监听...

    Java事件处理机制-事件监听器的四种实现方式.docx

    如果事件处理逻辑较为复杂,或者需要将事件处理逻辑与UI组件的定义分开,则可以使用外部类作为事件监听器。这种方式下,创建一个独立的类来实现事件监听器接口,并在主类中创建该类的对象作为事件监听器注册。 **...

    android全局事件监听器

    在Android开发中,全局事件监听器是一种非常实用的设计模式,它允许开发者在整个应用程序范围内监听特定的事件,而无需在每个需要响应的类中都添加监听代码。标题中的"android全局事件监听器"指的是一个实现此类功能...

    JAVA事件处理机制

    总的来说,Java事件处理机制是构建交互式应用程序的关键,它通过事件源、事件和监听器的协作,实现了对用户行为的响应。事件监听器适配器进一步简化了这一过程,让开发者可以更加专注地处理应用程序的核心逻辑。理解...

    基于 RBAC与监听器机制设计作业管理软件

    而监听器机制则用于捕捉用户的交互行为,并根据这些行为调用相应的事件处理函数。 #### 二、RBAC机制概述 RBAC模型的核心在于定义不同的角色,并为每个角色分配特定的权限。在本项目中,主要涉及三种角色:学生、...

    android 事件监听机制

    Android事件处理系统由三部分组成:事件源(Event Source)、事件(Event)和事件监听器(EventListener)。事件源通常是UI组件,如按钮、文本框等;事件是用户与这些组件交互的动作,如触摸屏幕或按键;监听器则是...

    servlet事件监听器和JSP基础

    Servlet事件监听器是Java Servlet API提供的一种机制,它允许程序员注册监听器对象来响应特定的服务器或会话事件。主要的监听器类型包括: 1. **ServletRequestListener**:监听请求初始化和销毁事件,可以在请求...

    Java事件机制例子

    Java事件机制基于观察者模式,其中事件源(如按钮)会发布事件,而事件监听器则订阅这些事件并执行相应的操作。 事件、事件监听器和事件源是Java事件处理的三个核心概念。事件是用户或系统发生的某种情况,如鼠标...

    java事件处理机制Demo

    事件处理机制的核心是事件监听器。在Java AWT和Swing库中,提供了各种类型的监听器,如动作监听器(ActionListener)、鼠标监听器(MouseListener)、键盘监听器(KeyListener)等,它们用于捕获和处理特定的用户...

    java事件处理机制详解

    在Java2及以后版本的事件处理中,不再使用dispatchEvent()-postEvent()-handleEvent()的方式,而是采用监听器类。事件的传递是通过直接调用监听器对象的方法完成的,这种方式更加直接和灵活。每个事件类都有一个对应...

    Qt全局鼠标、键盘事件监听器库

    【Qt全局鼠标、键盘事件监听器库】是一个用于在Windows和Linux系统上实现跨平台的全局鼠标和键盘事件捕获的库。这个库基于流行的Qt框架,为开发者提供了一个便捷的方式来监听并处理系统的输入事件,无论是来自应用...

    深入探索Spring事件监听机制:技术与应用

    在Spring中,事件监听机制由三部分组成:事件(ApplicationEvent)、事件监听器(ApplicationListener)和事件广播器(ApplicationEventMulticaster)。接下来我们将深入探讨这些概念以及如何在实际应用中使用它们。...

    java事件处理机制ppt

    这样的事件处理机制使得Java GUI程序具有良好的可扩展性和灵活性,可以根据需要添加或移除监听器,以应对不同的用户交互需求。通过学习和掌握Java事件处理机制,开发者可以创建更富交互性的应用程序,提升用户体验。

Global site tag (gtag.js) - Google Analytics