Java学习笔记(二)事件监听器
来源:互联网 发布:js中的addlistenevent 编辑:程序博客网 时间:2024/06/05 13:03
Java实现对组件事件(如单击、输入等)的监听和JavaScript类似,都是先添加Listener,再写触发函数,不同的是,Java实现监听前必须使用implements将各个接口添加到类内。
相关的库为java.awt.event.*
例如要添加行为事件的接口ActionListener,则需要在实现窗口的类内作如下操作:
public class Test extends JFrame implements ActionListener{ public Test(){ //... } public void actionPerformed(ActionEvent event){ //... } }
注意只要添加了ActionListener接口,并且Test不是抽象类,则必须加入相应的触发函数,这里加入的为actionPerfomed。
以处理按键单击为例,具体步骤如下:
①添加ActionListener接口
②在相应的类内写触发函数actionPerformed(ActionEvent event)
③对按钮(设为button1)添加监听器:button1.addActionListener(this)
④将按钮加入容器
⑤在触发函数内,判断触发对象,有两种方法
第一种,使用event的getSource()方法,获取的是对象,可以使用==表达式直接判断对象,例如
Object source = event.getSource(); if(source == button1){ //... }
第二种,事先在添加监听器前设定行为命令,例如先对button1添加动作命令"trig1"
button1.setActionCommand("trig1");
在触发函数内,使用getActionCommand()方法来获取行为命令:
if(event.getActionCommand() == "trig1"){ //... }
第二种用法多用在一些多个组件触发相同的动作时,例如退出程序功能,可能同时存在于菜单和工具栏,他们可以使用同样的命令,来简化代码。
对于其他的监听,与此类似,不再赘述,需要注意的是,一定要先添加组件的各种属性,再将其放入容器,否则设置会被忽略。
对于窗口的监听,有大量的方法,如果像上面那样使用,则会产生很多空方法,为了避免这一点,可以采用适配器类来监听。可以在原来的类的下面再创建一个类,继承响应的适配器。
例如下面的键盘监听,添加一个类继承KeyAdapter来实现监听,对于需要的触发函数,覆盖即可
class KeyMonitor extends KeyAdapter{ public void keyTyped(KeyEvent event){ //... }}
- Java学习笔记(二)事件监听器
- 传智播客java web 学习,Servlet事件监听器(二)
- java的事件监听器学习
- Java学习笔记(AWT事件及其相应的监听器接口)
- 模拟“事件监听器”(二)
- spring源码学习笔记-初始化(五)-MessageSource/事件监听器
- spring源码学习笔记-初始化(五)-MessageSource/事件监听器
- spring源码学习笔记-初始化(五)-MessageSource/事件监听器
- java监听器用法(二):窗口监听器
- Java Web监听器-学习笔记
- Java精选笔记_Servlet事件监听器
- java丨事件驱动程序设计学习笔记(二)
- 传智播客java web 学习,Servlet事件监听器
- Servlet事件监听器(二)
- android学习笔记——事件处理器和事件监听器
- Android笔记二十三.Android基于事件监听器处理机制
- Android笔记二十三.Android基于事件监听器处理机制
- 事件和事件监听器 笔记
- 算法学习笔记(一)C++排序函数、映射技巧与字典树
- Unity3D学习笔记(五)C#与JavaScript组件访问的比较
- 算法学习笔记(二)字符串根据逆序排序
- 算法学习笔记(三)问题的转化与高精度运算
- Java学习笔记(一)网格袋布局
- Java学习笔记(二)事件监听器
- Java学习笔记(三)Java2D组件
- FPGA学习笔记(一)Verilog语法基础
- FPGA学习笔记(二)模块建立及变量连接
- 96利用反射获取缓存和应用程序的大小信息
- 待飞日记(第八天和第九天)
- 告别2014
- Oracle数据库之同义词(SYNONYM)使用
- 复习之增删改查