监听器的使用和值传递
1.监听器的使用方法
(1)在主运行程序中创建监听器对象
(2)将监听器加入到要监听的对象中,即监听对象.add监听器类,
例:在窗体frame中添加监听器
frame.addMouseListener(java.awt.event.MouseListener 1)
(3)在创建监听器类时,一定要实现和所需用到的监听器进行对接,
即:public class LoginListener implements java.awt.event.ActionListener
(4)在实现接口中的方法中,监听器的方法是通过事件触发自动调用的
2.监听器的作用
监视各种动作,方法是否发生
3.不同类之间的值传递的定义
指的是某一个对象不在同一个类中时,为了在另一个类中使用该对象,则要实现值传递
4.值传递的方法
/ * 登录窗体
*
* @author Administrator
*
*/
public class LoginUI extends javax.swing.JFrame {
public static void main(String args[]) {
// 创建窗体对象
LoginUI lu = new LoginUI();
lu.initUI();
}
/**
* 显示窗体的方法
*/
public void initUI() {
// this:指调用 initUI() 的一个对象
this.setTitle("用户登录");
this.setSize(300, 200);
// 设置点击关闭按钮的时候退出程序
this.setDefaultCloseOperation(javax.swing.JFrame.EXIT_ON_CLOSE);
// 设置布局
java.awt.FlowLayout layout = new java.awt.FlowLayout();
this.setLayout(layout);
// 加组件
javax.swing.JLabel nameLabel = new javax.swing.JLabel("帐号:");
javax.swing.JTextField nameField = new javax.swing.JTextField(20);
javax.swing.JButton loginBut = new javax.swing.JButton("登录");
this.add(nameLabel);
this.add(nameField);
this.add(loginBut);
//显式窗体可见
this.setVisible(true);
// 创建监听器对象
LoginListener lis = new LoginListener([color=red]nameField[/color]);
// 给按钮加动作监听器
loginBut.addActionListener(lis);
}
}
/**
* 登录按钮的监听器,实现动作监听器接口
*
* @author Administrator
*
*/
public class LoginListener implements java.awt.event.ActionListener {
//定义jt的属性
private javax.swing.JTextField nameField;
/**
* 重载构造器
* @param jt
*/
public LoginListener(javax.swing.JTextField nameField) {
this.nameField = nameField;
}
}
举例说明:实现要在LoginListener.java(登陆监听器)中使用LoginUI.java 中的nameField对象
在主运行程序中,调用了LoginListener类,创建了LoginListener对象,要实现值传递,
(1)给LoginListener类添加一属性,属性的类型为要使用对象的类型,即:
private javax.swing.JTextField jt
(2)只需在LoginListener类中重载LoginListener的构造器:
public LoginListener() {}
(3)给重载的构造方法LoginListener加入形参
(javax.swing.JTextField jt),即要使用跨类使用的对象的类型
(4) 再用关键字this实现形参和属性的赋值
(5)在创建对象时,给对象赋值,对象为所要使用的对象,即
LoginListener lis = new LoginListener(nameField);
5.this的调用原理
this调用哪个类的方法,this就指哪个类的对象
6.创建窗体时的必不可少的方法
this.setTitle("用户登录");
this.setSize(300, 200);
// 设置点击关闭按钮的时候退出程序,()内的只可以为0,1,2,3
this.setDefaultCloseOperation(javax.swing.JFrame.EXIT_ON_CLOSE);
// 设置布局
java.awt.FlowLayout layout = new java.awt.FlowLayout();
this.setLayout(layout);
this.setVisible(true);
分享到:
相关推荐
例如,一个常见的应用场景是,使用监听器创建会话并在会话创建时设置一个默认值,然后使用过滤器检查该值是否满足条件,如果不符合则重定向到登录页面。这样可以确保只有经过验证的用户才能访问受保护的资源。 总之...
1. **监听器**:监听特定端口上的连接请求并将它们传递给数据库实例。 2. **listener.ora**:这是Oracle监听器使用的配置文件,其中包含了监听器的地址、端口以及与之关联的服务等信息。 3. **SID**:即Service ID,...
总结一下,Android中的`Activity`和`AlertDialog`值传递主要通过创建`AlertDialog`,设置自定义布局,获取`EditText`的值,并通过`OnClickListener`回调到`Activity`的方法来完成。这种方法使得我们可以灵活地在...
在iOS开发中,UI界面之间的值传递是应用交互设计中的重要环节。这涉及到不同视图控制器之间数据的流通,确保用户操作的数据能够准确无误地更新到其他界面。本篇文章将详细探讨四种常见的UI界面间值传递方法:Key-...
Cordova提供了一个`DocumentEventListener`接口,使得JavaScript可以注册监听器,Java端触发事件时,JavaScript会接收到通知。 8. **生命周期管理**:在混合开发中,要注意处理Android应用的生命周期事件,如暂停、...
在编程领域,特别是Java开发中,控件的相互控制与消息传递是构建用户界面(UI)时的关键概念。...在实际开发中,应根据具体需求选择合适的控件、事件监听器以及消息传递方式,以实现最佳的用户体验。
总的来说,JS界面跳转与值传递主要依赖于React Native的`Navigator`组件,通过配置不同的场景效果、渲染不同视图、管理组件生命周期以及传递参数,实现了在多个页面之间跳转并共享数据的功能。在实际开发中,可以...
以下将详细讲解Vue中父子组件的值传递和方法传递。 一、Vue中父组件向子组件传值 在Vue中,父组件向子组件传递值通常使用`props`特性。父组件通过`v-bind`指令(简写为`:`)将数据绑定到子组件的属性上。在示例代码...
《Linux下基于Netfilter的网络监听器的设计与实现》这篇文献主要探讨了如何在Linux操作系统中利用Netfilter框架设计和实现一个高效的网络监听器。Netfilter是Linux内核2.4.x版本引入的一个功能强大的网络数据包过滤...
在Vue框架中,props是用来从父组件向子组件传递数据的一种机制。然而,props值是设计为只读的,这意味着子组件内部不应该直接...同时,了解如何处理watch监听器的特殊情况,可以提高开发效率并确保数据同步的正确性。
1. **基本参数传递方式**:在编程中,参数传递主要有三种方式:值传递、引用传递和按需传递(在某些语言中)。值传递会复制原始值到新的内存空间,修改副本不会影响原始值;引用传递则传递的是对象的引用地址,改变...
你可以定义一个监听器方法来处理这些事件,参数通常会作为方法的输入。 4. **EL表达式和转换器**:EL表达式可以用来在Bean和组件之间传递复杂的对象。此外,JSF还允许自定义转换器,以确保数据在组件和Bean之间的...
在监听器的onClick方法内,执行数据传递的逻辑。 4. **数据传递**: Android提供了多种数据传递方式,如Intent、Bundle、SharedPreferences等。在这个场景中,最常用的是Intent。创建一个新的Intent,将获取到的...
组件之间的数据传递与组件到页面的传递类似,也可以嵌套组件并使用相同的方法进行通信。 总的来说,微信小程序中的页面与组件交互主要依赖于数据绑定、事件监听、函数调用和页面栈管理。通过理解并熟练掌握这些技术...
在子组件中声明props,然后在父组件中通过属性绑定来传递值。 ```javascript // 子组件 Vue.component('child-component', { props: ['parentMessage'], template: '<span>{{ parentMessage }}</span>' }) // 父...
数据绑定允许控件的值与应用程序的某个数据源同步,当数据源改变时,控件的显示也会自动更新。 5. **模型-视图-控制器(MVC)模式**:在大型项目中,常常采用MVC模式来组织代码。在这种模式下,文本框作为视图的一...
4. **事件监听**:在A页面上设置事件监听器,监听特定的自定义事件,比如一个“返回”事件。当B页面完成选择并关闭时,可以触发这个事件,携带返回值。 5. **Web消息API(Web Messaging API)**:如果B页面是在新的...
在这个场景中,"thickBox回传值"指的是在使用ThickBox进行文件下载时,如何获取或传递下载操作完成后的一些返回信息,比如下载状态、文件信息等。 在ThickBox的使用过程中,通常会遇到以下关键知识点: 1. **...
在Python的Tkinter库或Java的Swing库中,我们可以通过定义事件监听器来实现这一功能。例如,在Python中,我们可以为Button组件绑定一个command参数,该参数可以是一个函数,函数的参数就是需要传递的值。 ```python...