繁体   English   中英

如何在JLabel中获取图像的X,Y坐标

[英]How to get X,Y coordinates of an image in a JLabel

我将地图图像放置为JLabel的图标。 我正在使用以下代码来获取单击鼠标的位置的X,Y坐标。 我已将此代码放在JLabel的MouseClick事件中。

Point point = MouseInfo.getPointerInfo().getLocation();

double X = point.getX();
double Y = point.getY();

但是坐标取决于JFrame表单的位置。 如果移动表格,则坐标会更改。

无论如何,我可以冻结JFrame吗? 还是有反正我可以将图像的角设为0,0并获得相对于该角的其他坐标? (这样我就可以计算出实际坐标)

getLocation返回相对于屏幕的鼠标坐标。 改用MouseEvent的坐标

label.addMouseListener(new MouseAdapter() {
    @Override
    public void mouseClicked(MouseEvent e) {
         double x = e.getX();
         double y = e.getY();
         ...
    }
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM