我正在尝试向 MapMarker 添加鼠标监听器,以便当鼠标悬停在 MapMarker 上时,我可以对事件使用react。
我实现了 mouseListener,但我无法真正添加监听器。 问题是我没有找到 MapMarker 将添加 MouseListener 的方法,因为没有层次结构实现 JPanel。
感谢任何帮助
最佳答案
如前所述here ,默认的 JMapViewer
构造函数使用 DefaultMapController
,“它通过按下鼠标右键实现 map 移动,通过双击或鼠标滚轮缩放。”要查看 map 坐标,请扩展 DefaultMapController
,覆盖 mouseClicked()
并使用查看器的一种 getPosition()
方法。您可以使用您的 Controller ,如 Demo.java
, r30377 第 65 行的注释中所示。
new DefaultMapController(map){
@Override
public void mouseClicked(MouseEvent e) {
System.out.println(map.getPosition(e.getPoint()));
}
};
关于java - JMapViewer 将鼠标监听器添加到 MapMarkerDot,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24588492/