【发布时间】:2010-09-27 20:57:08
【问题描述】:
我在通过实现 Java Swing Scrollable 接口查看 JPEG 图像时遇到了一个奇怪的问题。
我的代码允许我使用鼠标左键在图像顶部绘制一个矩形。 如果我不触摸滚动条,一切正常。
但只要我向下滚动,就会在不同的位置绘制一个矩形。基本上,如果我移动自上而下的滚动条,图像会以错误的 y 坐标绘制。如果左右滚动,则行为相同,图像会以错误的 x 坐标绘制。这些 x,y 坐标代表左上角 Point(x,y) 开始绘制矩形。
所以在向下滚动并左键单击图像以绘制一个矩形后,y 坐标关闭。下面是我添加到其中一个包含图像内容的面板中的事件。
public void mousePressed(MouseEvent m) {
if (SwingUtilities.isLeftMouseButton(m)) {
....
int y = m.getY(); //This y-coordinate is off whenever I scroll down the image.
...
}
}
有人对可能是什么问题有任何线索吗?我的意思是我从 MouseEvent 获取 y 坐标,所以我希望它具有正确的值。
谢谢。
【问题讨论】: