1 .事件其实无处不在,每个人不管是在干什么,都是事件,在类里面就是对象的行为就是事件,按钮的触发,窗体的点击、关闭,等等
2 .监听器顾名思义就是来监听别人的一举一动的,当然在类里面它就是来监听与对象相对应的动作事件的,监听器记录指定对象的任何异动,但达到某一条件时就会触发事件,这个事件的发生是自动的,不需要再操作,我们的工作就是把它按在所需要监控的对象上
JButton login_button = new JButton(“登陆”);
login_button.addActionListener(new ActionListener(){实现方法;});
3.上面的监听器是系统提供的,往往不能满足需要,所以一般我们会自己重新构造一个监听器类,由于要能够实现监听器的方法,一般会想到去继承,但一般系统提供的都是借口,所以需要实现(不是继承)系统提供的监听器:
public class MyButtonListener implements ActionListener {
//由于是借口所以子类必须实现接口中的方法
public void actionPerformed(ActionEvent e) {实现方法;}
}
4.完成以上步骤后就可以做一个简单的事件触发机制了
示例:
////////////////////////////////////////////////////////////////////////////
public class JFrameTest {
public static void main(String[] args) {
JFrameTest Test = new JFrameTest();
Test.showFrame();
}
public void showFrame(){
JFrame frame = new JFrame("内部类事件处理机制");//窗口
FlowLayout fl = new FlowLayout();//布局
frame.setLayout(fl);
la_name = new JLabel();//名字标签
la_name.setText("名字:");
jta_name = new JTextField(20);//设置标签区域
jta_name.setText("larch");
JLabel la_password = new JLabel();//密码标签
la_password.setText("密码:");
JPasswordField jp_name =new JPasswordField("larch", 20);//密码区域
JButton bu_login = new JButton();//登陆按钮
bu_login.setText("登录");
bu_login.addActionListener(new ActionListener() {//时间处理器
@Override
public void actionPerformed(ActionEvent e) {//默认事件函数
// TODO Auto-generated method stub
ProcessEvent();//事件处理函数声明
}
});
frame.add(la_name);//加入名字标签
frame.add(jta_name);//加入名字区域
frame.add(la_password);//加入密码标签
frame.add(jp_name);//加入密码区域
frame.add(bu_login);//加入按钮
frame.setSize(300,500);//设置大小
frame.setDefaultCloseOperation(3);//设置退出方式
frame.setVisible(true);//设置可见性
}
private void ProcessEvent(){
String s = jta_name.getText();//获得名字区域内容
la_name.setText(s);//重新设置明知标签内容
jta_name.setText("");//清空名字区域内容
}
private JLabel la_name;
private JTextField jta_name;
}
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
public class MyButtonListener implements ActionListener {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
JOptionPane.showMessageDialog(null, "larch 你好!!");
Object sour = e.getSource();
if(sour instanceof JButton){
JButton bu = (JButton)sour;
String lab = bu.getText();
System.out.println("按下这个按钮"+lab);
}
else{
System.out.println("其他组建发出的事件");
}
}
}
分享到:
相关推荐
在Java中,使用事件监听器的步骤大致如下: 1. **创建监听器类**:你需要创建一个类,并实现相关事件监听器接口。例如,如果你要处理鼠标事件,可以创建一个类实现MouseListener接口。 ```java public class ...
Java Swing 常用事件和监听器接口 Java Swing 是一个功能强大的图形用户界面(GUI)工具包,它提供了许多事件和监听器接口,帮助开发者更好地处理用户交互。下面是 Java Swing 中常用的事件和监听器接口。 1. ...
事件监听器的实现方式有多种,本篇文章将介绍四种常见的事件监听器实现方式:自身类作为事件监听器、外部类作为事件监听器、匿名内部类作为事件监听器和内部类作为事件监听器。 1. 自身类作为事件监听器 在这个...
在Android开发中,事件监听器(Event Listeners)是实现用户交互和响应各种事件的关键机制。标题提到的“android 外部类作为事件监听器类”是指将一个非匿名类(外部类)作为事件处理的对象,这在某些情况下可能是...
2. 对某个源注册一个监听器,此源便成为一个事件源,当事件源上发生某一个动作时,监听器的某个方法将会被调用执行,在执行事件监听器的这个方法时,同时会把事件监听对象传递给此方法,开发人员在监听器中可以拿到...
Java监听器的实现可以分为三个部分:事件源、事件对象和事件监听器。事件源是指产生事件的对象,例如按钮、文本框等。事件对象是指事件的载体,用于传递事件信息。事件监听器是指负责处理事件的对象,例如点击按钮时...
当你将一个类用作事件监听器时,你已经设置好一个特定的事件类型,它会用该类进行监听。接下来的操作是:一个匹配的监听器必须被加入到该组件中 组件被创建之后,可以在组件上调用如下方法来将监听器与它联系起来 ...
当事件源(熊孩子)发生某个事件(洗手前的行为)时,就会创建事件对象(RemindWashingHandsEvent),随后触发事件监听器(RemindListener)的响应(提醒操作)。 更具体的实现可以参考Kid类和WashingHandsListener...
Servlet事件监听器和JSP是Java Web开发中的重要组成部分,它们在构建动态网站时起着核心作用。Servlet事件监听器允许开发者对特定的Servlet容器事件做出反应,而JSP则是用于创建动态网页的简便方式。这里我们将深入...
在Android开发中,全局事件监听器是一种非常实用的设计模式,它允许开发者在整个应用程序范围内监听特定的事件,而无需在每个需要响应的类中都添加监听代码。标题中的"android全局事件监听器"指的是一个实现此类功能...
而监听器则专注于事件的监听和响应,如监控应用程序的生命周期和用户会话状态。 2. **处理时机**:过滤器在请求进入和离开目标资源之间工作,按照配置的顺序逐个执行。监听器则是在特定事件发生时触发,不依赖于...
**如何使用过滤器和监听器** 在`web.xml`配置文件中,我们可以定义过滤器和监听器。例如,对于过滤器,我们需要定义一个filter元素,包含filter-name、filter-class和url-pattern等属性。对于监听器,我们定义一个...
在传统的事件监听器中,我们通常使用`addEventListener`方法添加事件处理函数,如以下示例所示: ```javascript document.addEventListener("click", fn, false/true); ``` 这里的第三个参数是一个布尔值,用来...
【Qt全局鼠标、键盘事件监听器库】是一个用于在Windows和Linux系统上实现跨平台的全局鼠标和键盘事件捕获的库。这个库基于流行的Qt框架,为开发者提供了一个便捷的方式来监听并处理系统的输入事件,无论是来自应用...
通过实现`javax.faces.event.FacesListener`接口或使用预定义的监听器类,开发者可以注册监听器来响应这些事件。例如,`PhaseListener`允许你在JSF生命周期的不同阶段介入,进行额外的处理或验证。在你的项目中,...
事件监听器是Android开发中的重要概念,用于捕捉和响应用户在界面上的各种交互操作。在Android中,事件监听器主要用于处理UI控件的点击、触摸、键盘输入等事件。本篇将详细介绍EditText的事件监听。 首先,我们来看...
本文将详细解析Java事件处理机制中事件监听器的四种实现方式:自身类作为事件监听器、外部类作为事件监听器、匿名内部类作为事件监听器以及内部类作为事件监听器。 1. **自身类作为事件监听器** 在自身类作为事件...
在AWT中,事件处理是通过事件监听器接口来实现的,这些接口定义了特定类型的事件发生时需要调用的方法。下面我们将详细探讨Java AWT中的常见事件、监听器接口及其方法。 1. **ActionEvent** 和 **ActionListener**...
### Java监听器和过滤器详解 #### 监听器概念及分类 监听器在Java Web开发中扮演着非常重要的角色,主要用于监听特定容器事件的发生,比如服务器对象的创建与销毁等,并根据这些事件做出相应的处理。它的工作原理...
例如,Session监听器可以监听会话的创建、过期等事件,ServletContext监听器可以监听上下文的初始化和销毁事件,Request监听器可以监听请求的开始和结束。监听器的实现通常需要实现特定接口,如HttpSessionListener...