JAVA 监听接口 刚学习了!JAVA的GUI监听接口!感觉有很大的疑问那位高手指点一下!ActionListener 所有的接口都是在这实现的吗?知道的太少了!最好能交下怎么看API感觉就找不到这些这些接口在哪??? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 一个监听接口是需要被一个组件(如Button、Frame、Panel)添加的,你要给一个组件添加监听,就要找里面的add...Listener方法,比如找Button类,就会看到里面的 void addActionListener(ActionListener l) 方法,这时就会发现,Button只能添加ActionListener这个监听接口,仔细想一想这个接口,应该是代表了Button执行的动作,那么无疑就是被点击。所以如果你想在点一个按钮的时候实现一些东西,就要找Button类,看看里面有什么添加接口的方法,于是就查到了void addActionListener(ActionListener l),然后再查查ActionListener这个接口需要实现哪些方法,之后查到了void actionPerformed(ActionEvent e) ,所以只要重写这个方法就可以了。而ActionEvent e 里面就是记载着发生操作时的信息,比如被点的按钮是哪个等等。这样,来做个实例,假如你想要在已经运行了一个Frame时,当按下键盘就会在后台输出你按下的是哪个键,要如何写呢。你可以先找到Frame类,你会发现他里面没有add...Listener方法,那么如果他没有,就一定是他的父类提供了添加监听的方法,于是在下面找他的父类java.awt.Window、java.awt.Container、java.awt.Component,发现里面有一些添加监听的方法,比如addWindowListener、addMouseListener、addKeyListener,而你想对他添加对键盘的监听,当然就是addKeyListener了,点进去看一下,public void addKeyListener(KeyListener l),他需要被传进来一个KeyListener,再点进KeyListener看一下,他有3个方法,void keyPressed(KeyEvent e)、void keyReleased(KeyEvent e)、void keyTyped(KeyEvent e),而Pressed可以被翻译成按下的意思,键盘被按下当然就是keyPressed这个方法了,那么重写这个方法就可以了,而KeyEvent e 里面同样是记载着发生当前操作时的一些数据,其中就有按下了哪个键,要如何得到呢,点进去KeyEvent里面看一下,可以看到他提供了一个getKeyChar()方法,这时只要打印出e.getKeyChar()的值,就OK了。需要说明的是,KeyListener这个接口有3个方法需要被实现,比较不好写,所以Java也提供了对这个接口进行空实现的类,就是把Listener换成Adapter,这样只要写你想实现的方法就可以了。以上操作写成代码就是这样:import java.awt.Frame;import java.awt.event.KeyAdapter;import java.awt.event.KeyEvent;public class MyFrame extends Frame { public MyFrame() { this.setSize(400, 400); this.setVisible(true); this.addKeyListener(new KeyAdapter() { public void keyPressed(KeyEvent e) { System.out.println(e.getKeyChar()); } }); } public static void main(String[] args) { new MyFrame(); }} Java的事件监听器接口都没学过 总是感觉gui了解就成 不用学那么深重要的是java ee 而不是Java se 当然不是啦!每个事件类型都有相应的监听者接口。例如要接收MouseEvent的话就要实现MouseListeener这个接口,这要看你遇到的事什么要的事件源了。建议没事看一下API,还有JDK下的swing包中的源代码,比较有帮助!!!!!! 事件和监听这个事件的接口是一一对应的事件源对象:发生事件的那个对象事件对象:封装了某种事件的具体信息的对象监听器对象:实现了某种监听器接口的类的对象就是说你要监听哪个事件API中都是EVENT结尾的类(如ActionEvent)去找他的事件监听器的接口API中都是LISTENER(如ActionListener)结尾的一个接口,你去实现这个接口,重写里面的方法,方法中写你监听到事件后要做什么处理,然后在事件源对象上添加这个时间监听器的对象 java项目打包运行保存成jar文件,疑难问题求解! 一道题 Float取值不准确 为什么我觉得java比C/C++难 我的堆排序建堆错误,散分求解! 一个JAVA针式打印机打印问题``请vssivl(克斯)和其他高手们进来帮个忙.,.. 高手帮忙看程序啊!多谢! 帮忙看看程序问题在哪?比较长,如能解决再送60分(就剩160分了) 图片路径的问题,很简单的 请问:“synchronized”的用法? 求救 这是怎么回事啊 Java问问
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;public class MyFrame extends Frame { public MyFrame() {
this.setSize(400, 400);
this.setVisible(true);
this.addKeyListener(new KeyAdapter() {
public void keyPressed(KeyEvent e) {
System.out.println(e.getKeyChar());
}
});
}
public static void main(String[] args) {
new MyFrame();
}}
建议没事看一下API,还有JDK下的swing包中的源代码,比较有帮助!!!!!!
事件源对象:发生事件的那个对象
事件对象:封装了某种事件的具体信息的对象
监听器对象:实现了某种监听器接口的类的对象
就是说你要监听哪个事件API中都是EVENT结尾的类(如ActionEvent)去找他的事件监听器的接口API中都是LISTENER(如ActionListener)结尾的一个接口,你去实现这个接口,重写里面的方法,方法中写你监听到事件后要做什么处理,
然后在事件源对象上添加这个时间监听器的对象