gpt4 book ai didi

java - MouseMotion 和 MouseMotionListener 不工作

转载 作者:行者123 更新时间:2023-12-01 19:08:46 25 4
gpt4 key购买 nike

好的,所以我正在制作一个完全正常的应用程序,并且遇到了 MouseMotion 和 MouseMotionListener 的问题:它们在我的 Canvas 中根本没有被调用。我以为这是我将 Canvas 添加到框架中的问题,但我创建了这个测试程序并且非常惊讶:

import java.applet.Applet;
import java.awt.event.MouseMotionListener;
import java.awt.event.MouseEvent;

import java.awt.Graphics;

public class testapp extends Applet implements MouseMotionListener {
int x = 40;
public void mouseMoved(MouseEvent e) {
showStatus("mouse moved");
}
public void mouseDragged(MouseEvent e) {
showStatus("mouse dragged");
x++;
repaint();
}

public void paint(Graphics g) {
g.drawString("Hello World!", 40, x); //x SHOULD move it down! ugh...
}
}

所以我使用 BlueJ 的漂亮 Applet 运行程序运行此程序,当我单击并拖动鼠标时,x 不会增加!当我实现 MouseListener 并尝试在实现的方法之一内增加变量时,也会发生同样的情况。

我应该重新启动计算机吗?我的JDK版本有问题吗? (我有 Java 7,以防这是一个已知的错误)

现在,我非常困惑,我有一项作业需要明天到期的方法,因此非常感谢任何帮助。谢谢!

最佳答案

您没有向监听器注册该组件。也许你可以试试这个:

   public void init(){
addMouseMotionListener(this);
}

关于java - MouseMotion 和 MouseMotionListener 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9089815/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com