我正在使用ARCGIS Javascript API,并尝试替代形状顶点的默认右键单击行为。
在ESRI的帮助中,它确实列出了onVertexClick事件,但从此处似乎无法确定这是右键单击事件还是左键单击事件,因此我无法仅覆盖右键单击。https://developers.arcgis.com/javascript/jsapi/edit.html
我尝试设置右键单击行为,以便只删除当前节点/顶点,而不是显示带有“删除”选项的菜单。
EDIT这里是ARCGIS api中存在的当前事件。
在这个例子中,我们使用了一个工具栏来定义一个事件列表。
该事件已经在API中,但是它不返回任何方式来让我确定左/右点击。
您的注解“侦听单击事件,然后测试MouseEvent对象的按钮属性”将起作用,但实际上我无法直接向顶点添加单击事件,因为这些事件位于ARCGIS API代码中。
3条答案
按热度按时间gudnpqoy1#
对于其他任何人谁正在寻找一种方法来做到这一点,而不是黑客周围。你可以听“contextmenu”(右键单击)事件,在“contextmenu”处理程序中设置一个标志,让应用程序知道当前状态。用“mousedown”对“顶点句柄”模拟一个单击事件,“mouseup”组合。在“vertex-click”处理程序中检查“contextmenu”处理程序中设置的右键单击标志
sg3maiej2#
在ESRI回复后,他们似乎没有在API中提供这一细节,因此这还不可能。
jvlzgdj93#
最后我用了不同的方法。我想添加一个UI,这样用户就可以输入点的XY
该菜单的代码使用Esri的折点编辑器来获取点,更改其XY,然后手动调用事件来刷新几何。