java鼠标拖动事件问题

请高手看看下面的程序,设置按钮坐标的地方如果改成相对事件源,拖的时候就会出现两个按钮,这是怎么回事啊?请高人指点importjava.applet.*;importjav... 请高手看看下面的程序,设置按钮坐标的地方如果改成相对事件源,拖的时候就会出现两个按钮,这是怎么回事啊?请高人指点
import java.applet.*;
import java.awt.*;
import java.awt.event.*;

public class Task_6 extends Applet implements MouseMotionListener{
Button b;
public Task_6(){
resize(500,400);
b = new Button("拖我");
b.addMouseMotionListener(this);
add(b);
setVisible(true);
}

public void mouseDragged(MouseEvent e){
//b.setLocation(e.getPoint());
b.setLocation(e.getLocationOnScreen());
//b.setLocation(e.getX(),e.getY());
b.setLocation(e.getXOnScreen()-10,e.getYOnScreen()-50);
//System.out.println(e.getX()+e.getY());
}

@Override
public void mouseMoved(MouseEvent e) {
// TODO Auto-generated method stub
//b.setLocation(e.getPoint());
}
}
展开
 我来答
hanzsim
2009-11-21 · TA获得超过1540个赞
知道小有建树答主
回答量:922
采纳率:0%
帮助的人:1094万
展开全部
你是要使按钮能拖动吗?
不应该这样做。
具体做法是:
在mousePressed里,记下此时鼠标对于按钮的坐标。
在mouseDragged里,把按钮位置改变到此时鼠标对于窗口的坐标平移刚才记下的坐标。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式