java监听鼠标事件的问题

importacm.graphics.*;importacm.program.*;importjava.awt.*;importjava.awt.event.*;publ... import acm.graphics.*;
import acm.program.*;
import java.awt.*;
import java.awt.event.*;public class MouseTracker extends GraphicsProgram {

public void run() {
label = new GLabel("X: /Y: .");
//label.setFont("Times New Roman-36");
add(label, 50, 50);

addMouseListeners();
}

public void MouseMoved(MouseEvent e){
label.setLabel("X: "+e.getX()+"/Y: "+e.getY()+"."); }

private GLabel label;

} 这段代码运行后不起作用呀,mousemoved()方法不起作用,鼠标移动的时候,label的内容没有变化。 请帮我看看有什么问题
展开
 我来答
匿名用户
2013-12-11
展开全部
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
class test extends JFrame implements Runnable{
public static int x,y,direction=0;
public test(){
this.setSize(600,400);
this.setVisible(true);
x=this.getContentPane().getWidth()/2;
y=this.getContentPane().getHeight()/2;
this.addKeyListener(new KeyAdapter(){
public void keyPressed(KeyEvent e){
switch(e.getKeyCode()){
case KeyEvent.VK_DOWN:
direction=1;break;
case KeyEvent.VK_LEFT:
direction=2;break;
case KeyEvent.VK_RIGHT:
direction=3;break;
case KeyEvent.VK_UP:
direction=4;break;
}
}
});
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String args[]){
test t=new test();
new Thread(t).start();
}
public void paint(Graphics g){
g.setColor(Color.white);
g.fillRect(0,0,this.getWidth(),this.getHeight());
g.setColor(Color.red);
g.drawRect(x-60,y-40,120,80);
}
public void run(){
while(true){
try{
Thread.sleep(100);
}catch(Exception e){}
switch(direction){
case 1: y =4;break;
case 2: x-=4;break;
case 3: x =4;break;
case 4: y-=4;break;
}
this.repaint();
}
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
微测检测5.10
2023-05-10 广告
您好!建议咨 深圳市微测检测有限公司,已建立起十余个专业实验室,企业通过微测检测就可以获得一站式的测试与认 证解决方案;(EMC、RF、MFi、BQB、QI、USB、安全、锂电池、快充、汽车电子EMC、汽车手机互 联、语音通话质量),认证遇... 点击进入详情页
本回答由微测检测5.10提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式