操作方法
没有工具可以通过单击鼠标来返回地图上特定位置的坐标。 ArcObjects SDK for the Microsoft .NET Framework 可用于扩展 ArcMap 的功能,其创建了一个新的工具栏,以使用“扩展 ArcObjects”功能并通过修改 OnMouseDown 事件来返回地图上的精确坐标。
本文提供了使用 ArcObjects SDK for the Microsoft .NET Framework 在 ArcMap 中通过单击鼠标来捕获地图坐标的步骤。
Public Sub New() 'TODO: Define your toolbar here by adding items AddItem("<Project_Name>.GetCoordinate") End Sub
注意: 要更改将在 ArcMap 中显示的工具栏名称,请按照以下内容编辑 Public Overrides ReadOnly Property Caption() 方法: Public Overrides ReadOnly Property Caption() As String Get 'TODO: Replace bar caption Return "<Toolbar_Name>" End Get End Property
Public Overrides Sub OnMouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Integer, ByVal Y As Integer) Dim pMxDoc As IMxDocument = m_application.Document Dim pPoint As IPoint = pMxDoc.ActiveView.ScreenDisplay.DisplayTransformation.ToMapPoint(X, Y) MsgBox("Map X: " & pPoint.X & vbCrLf & "Map Y: " & pPoint.Y) End Sub
注意: 在某些情况下,IPoint 变量需要参考 Esri.ArcGIS.Geometry 库。 要添加参考,在解决方案资源管理器窗格中,右键单击参考,然后单击添加参考。 搜索 Esri.ArcGIS.Geometry,然后选中复选框。
从 ArcGIS 专家处获得帮助
下载 Esri 支持应用程序