如何解决GMAP.NET Winforms - 尝试将现有标记拖到新位置
我有一个使用 GMAP.NET 控件并显示多个标记的 winforms 应用程序。我希望能够将标记拖动到新位置,但似乎找不到太多细节或代码示例来实现这一点。
我有以下方法 - 我认为可以处理功能,但需要为刚刚注释掉的代码充实一些代码。或者也许我走错了路,还有比这更简单的方法。
谁能进一步说明如何实现能够选择标记然后能够将其拖动到新位置的目标。
...
Private drag As Boolean
Private NewMarkerLat As Double
Private NewMarkerLng As Double
Dim OriginalStartPosLat As Double
Dim OriginalStartPosLng As Double
Dim Idx As Integer '//Perhaps a unique identifier in the list that is set in the marker tag property
Dim CurrentWayPoint As WayPointItem '//The Current Item in the list(of WaypointItems) that are currently being displayed
Private Sub GMap1_OnMarkerEnter(item As GMapMarker) Handles GMap1.OnMarkerEnter
'//This should identify the marker I'm hovering over show
OriginalStartPosLat = item.Position.Lat
OriginalStartPosLng = item.Position.Lng
Idx = item.Tag
End Sub
Private Sub GMap1_MouseDown(sender As Object,e As MouseEventArgs) Handles GMap1.MouseDown
If GMap1.IsMouseOverMarker Then
drag = True
'The item being worked on should be OriginalStartPosLat,OriginalStartPosLng and Idx
'I'm not sure about setting WP to the item in the List of waypoints which matches the
'list of waypoints - basically the current item I'm working on.
End If
End Sub
Private Sub GMap1_MouseMove(sender As Object,e As MouseEventArgs) Handles GMap1.MouseMove
'If drag is set then
' we want to adjust the position of the marker to match that of the New position on the map
' setting the following
' NewMarkerLat.Lat
' NewMarkerLat.lng
'end if
End Sub
Private Sub GMap1_MouseUp(sender As Object,e As MouseEventArgs) Handles GMap1.MouseUp
If drag = True Then
'Update the marker that was selected to new position
'//Update the marker position of the original marker in the list of markers
'// to match that of the ie. OriginalStartLat,Lng to NewMarkerLat,lng
End If
drag = False
End Sub
...
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。