我已经构建了一个 Google Maps API 工具集,允许用户在地图上绘制形状,给它们命名和记录区域。在完成每个形状后,系统会提示他们为其命名并设置一些其他选项,例如是否在地图上显示标签。
我想让用户在放置点时(即在绘制点时)右键单击并取消折线(或多边形)。
根据我在文档中阅读的内容,我应该能够检测到用户右键单击了地图,但我不确定如何取消他们正在绘制的叠加层,因为它不会被承诺地图尚未,这意味着我将无法将其称为对象。
有任何想法吗?
解决方案
感谢 Molle 博士的解决方案,如下所示:
...
google.maps.event.addListener(_map, "rightclick", function(){
InitialiseDrawingManager();
});
}
function InitialiseDrawingManager(){
if (_drawingManager != null)
_drawingManager.setMap(null);
_drawingManager = new google.maps.drawing.DrawingManager();
_drawingManager.setMap(_map);
UpdateOverlaySettings();
...