所以这是我正在使用的整个文件,在绝望中,我在每个事件中定义了 x 和 y,但我仍然什么也没得到..这是一个多类项目,我应该在哪里做 addMouseListener()
?为什么这没有记录该事件? (注意:run()
中的坐标打印有效。)这是一个小程序项目,小程序工作正常,只是没有注册此事件。
public class ClickCheck implements Runnable, java.awt.event.MouseListener {
public int x, y;
public ClickCheck() {
Thread t = new Thread(this);
t.start();
}
public void mouseClicked(java.awt.event.MouseEvent ev) {
x = ev.getX();
y = ev.getY();
System.out.println(x + "," + y);
}
public void mousePressed(java.awt.event.MouseEvent ev) {
x = ev.getX();
y = ev.getY();
System.out.println(x + "," + y);
}
public void mouseReleased(java.awt.event.MouseEvent ev) {
x = ev.getX();
y = ev.getY();
System.out.println(x + "," + y);
}
public void mouseEntered(java.awt.event.MouseEvent ev) {
x = ev.getX();
y = ev.getY();
System.out.println(x + "," + y);
}
public void mouseExited(java.awt.event.MouseEvent ev) {
x = ev.getX();
y = ev.getY();
System.out.println(x + "," + y);
}
public void run() {
System.out.println(x + "," + y);
}
}
最佳答案
假设您想将 MouseListener
添加到小程序的主窗口/面板区域,您可以将其添加到您的小程序 init()
方法中:
public void init()
{
addMouseListener(new ClickCheck());
...
此外,将 Thread
包含在 MouseListener
中也是很不寻常的。线程本身将打印出坐标并立即退出。
关于java - 点击检测不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12905900/