简述Java中的事件监听机制

猿友 2021-07-16 15:59:56 浏览数 (3058)
反馈

有没有想过这样的一些问题?为什么点击界面,会有相应的反应?输入指定内容,会出现相对应的内容?本文将通过 Java 来讲解 Java 中的事件监听机制来解答这些问题,以下是详情内容。

事件监听机制的定义

Java事件监听机制在图形界面编程的时候应用的比较多。我们会时常对界面进行一系列的操作,比如在输入框输入内容、点击登录注册按钮等等,着一些操作都被称之为事件。当进行这些操作的时候,程序就会采取相应的措施来相应这些事件。

1.事件源对象

    (1)什么内容可以成为事件源对象?

    只有容器组件和元素组件可以成为事件源对象。

    (2)怎么确定界面上谁是事件源对象?

    当你的动作发生在哪一个组件上,那么这个组件就是事件源对象。

2、事件监听方法

    (1)事件监听方法由事件源对象提供。

    (2)事件监听方法捕获事件源对象上面的动作。如果有动作发生,则方法捕获动作,收集源对象的信息和动作信息,然后把这些信息交给事件接口的对象进行处理。

3、事件接口(处理类)

    事件接口对象拿到事件监听方法提供的信息后,会根据这些信息,去调用相应的事件处理方法。


接下来我们通过一个简单的实例代码感受一下:

思路

    1、构建一个窗体,再装上一个​start​按钮。

    2、定义​LoginListener​事件处理类。这个类继承了​ActionListener​动作事件接口,需要重写接口里面的抽象方法。

    3、实例化​LoginListener​事件处理对象。

    4、给事件处理类对象添加动作监听方法,并指定事件处理类对象。

代码实例:

//第一步就简单地构造一个窗体
package Login20190318;

import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.Graphics;

import javax.swing.JButton;
import javax.swing.JFrame;

//Draw类继承JFrame类  相当于Draw类就是JFrame类  直接调用JFram类中的属性和方法
public class Draw extends JFrame
{
	//入口主函数
	public void initUI()
	{
		this.setSize(1500,600);
		FlowLayout flowlayout=new FlowLayout(FlowLayout.CENTER,5,5);
		this.setLayout(flowlayout);
		JButton button=new JButton("Start");
		this.add(button);
		
		this.setVisible(true);
		
		//使窗体获得绘图板权限
		Graphics graphics=this.getGraphics();
		
		//实例化监听方法类  并传入参数
		DrawLis drawlis=new DrawLis(graphics);
	
		//使按钮button调用监听方法
		button.addActionListener(drawlis);
	}
	
	
	
	public static void main(String[] args) 
	{
		//实例化Draw类并调用入口函数
		Draw draw=new Draw();
		draw.initUI();
		
	}

}
//定义事件监听方法的类
package Login20190318;

import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Random;
import java.awt.Graphics;

//实现监听接口
public class DrawLis implements ActionListener
{

	private Graphics g;
	
	//构造方法用于传参
	public DrawLis(Graphics g)
	{
		this.g=g;
	}
	
	//定义监听方法,画一个椭圆
	public void actionPerformed(ActionEvent e)
	{
		Random random = new Random();
		int x=random.nextInt(1600);
		int y=random.nextInt(1600);
		g.fillOval(x,y,60,70);
	}
	
}

初始面板

初始面板

点击事件后,面板上出现一个黑色的球。

点击事件后


总结

以上就是Java中的事件监听机制简要概述的全部内容,想要了解更多关于Java的知识内容,请关注W3Cschool以往的文章或者继续浏览接下来的内容,请多多关注和支持我们。


0 人点赞