2011-05-17 68 views
4

我想捕获gwt-openlayers中的鼠标事件。 以下处理程序确实收到事件,但我无法从EventObject对象中提取鼠标位置。 有人可以帮忙吗?gwt-openlayers中的mousemove事件

mapPanel.getMap().getEvents().register("mousemove", mapPanel.getMap(), new EventHandler() { 
      @Override 
      public void onHandle(EventObject eventObject) { 
       // how to obtain mouse position ? 
      } 
     }); 

此外,有没有另一种方法来接收鼠标移动事件?我可以拦截 MousePosition控制吗?

非常感谢您的帮助。

回答

9

我经历了源​​代码,自己找到了答案。我希望对其他人有用。

mapPanel.getMap().getEvents().register("mousemove", mapPanel.getMap(), new EventHandler() { 

      @Override 
      public void onHandle(EventObject eventObject) { 
       JSObject xy = eventObject.getJSObject().getProperty("xy"); 
       Pixel px = Pixel.narrowToPixel(xy); 
       LonLat lonlat = mapPanel.getMap().getLonLatFromPixel(px); 
      } 
     }); 
相关问题