我想创建一个mouseListener,每次鼠标悬停在矩形(或窗口上的某些坐标)上时都会触发。我想过使用mouseEntered,但只有当你在屏幕上移动鼠标时才会触发,而不是矩形等(看看我试过的是什么
public void mouseEntered(MouseEvent e) {
int mx = e.getX();
int my = e.getY();
if(mx >= 1000 / 2 && mx <= 1000 / 2 + 380) {
if(my >= 300 && my <= 390) {
System.out.println("test");
}
}
}
)但当然,这不起作用。 我知道可能有这样的问题,但我找不到它,我找不到任何符合我问题的东西。
编辑:我意识到mousEntered是错误的,它实际上是mouseMoved!下面是代码:public void mouseMoved(MouseEvent e) {
int mx = e.getX();
int my = e.getY();
if(mx >= 1000 / 2 && mx <= 1000 / 2 + 380) {
if(my >= 300 && my <= 390) {
System.out.println("test");
}
}
}
答案 0 :(得分:0)
看看这个:
https://docs.oracle.com/javase/tutorial/uiswing/events/mouselistener.html
而且:
你应该找到一些有用的注释和答案!另外,尝试将“mx”和“my”打印到控制台,以确保您拥有正确的坐标。