mouseReleased 是从按下到放开的一个事件,针对mousePressed的对应动作可能是mouseUp而不是mouseReleased,如果你不用mousePressed的时候看看mouseReleased是否有用!试试吧
解决方案 »
- java中,子类可以继承父类的所有的非private的,非静态的成员,那么父类的构造方法可以被继承吗?
- 才开始学java 老是会遇到空指针问题。。。
- 请高手看看我的jacob的错误问题!!!!
- jxl.jar 不能用请高手指教
- (下载)MyEclipse下开发Struts和Hibernate的录像。。
- 大虾们来帮我解决一下
- java关键字synchronized的问题
- 请教如何在Struts中做循环显示??
- 下载Java大全
- 如何执行两个“011100”和“101000”之类的0,1串的或操作?
- 初学者问题:怎样配置java环境?
- 请问各位,我安的是jb8但Help下的Help Topic没有内容,我该下什么呀!请给出路经,
import java.awt.event.*;
import java.applet.*;
//<applet code="MouseEvents.class" width="200" height="200"></applet>
public class MouseEvents extends Applet
implements MouseListener,MouseMotionListener {
String msg="";
int mouseX=0,mouseY=0;
public void init() {
addMouseListener(this);
addMouseMotionListener(this);
}
public void mouseClicked(MouseEvent me) {
//mouseX=0;
//mouseY=10;
//msg="Mouse clicked.";
//System.out.println("Mouse clicked.");
//repaint();
}
public void mouseEntered(MouseEvent me) {
mouseX=0;
mouseY=10;
msg="Mouse entered.";
repaint();
}
public void mouseExited(MouseEvent me) {
mouseX=0;
mouseY=10;
msg="Mouse exited.";
repaint();
}
public void mousePressed(MouseEvent me) {
mouseX=me.getX();
mouseY=me.getY();
msg="Down";
repaint();
}
public void mouseReleased(MouseEvent me) {
mouseX=me.getX();
mouseY=me.getY();
msg="UP";
repaint();
}
public void mouseDragged(MouseEvent me) {
mouseX=me.getX();
mouseY=me.getY();
msg="*";
showStatus("Dragging mouse at"+mouseX+", "+mouseY);
repaint();
}
public void mouseMoved(MouseEvent me) {
showStatus("Moving mouse at"+me.getX()+", "+me.getY());
}
public void paint(Graphics g) {
g.drawString(msg,mouseX,mouseY);
}
}
//我在你的源程序中mouseClicked函数置空,你再运行一下就知道其中的理由了
//这时你就可以看到mouseUp事件了,原因是:
//当你单击鼠标右键时,先产生mouseDown事件,然后是mouseUp,最后是mouseClicked
//你看不到是由于mouseUp与mouseClicked事件之间没有一个很长的时间间隔,可以让你看到屏幕的变化,mouseClicked的事件显示迅速重新刷新了mouseUp的事件显示,所以造成了你没有看到mouseUp事件的假象
多到google去看看这方面地资料很多地