地图浏览
mapX封装的很好,将ZoomIn,ZoomOut,Pan等基本地图浏览功能全部预制好了,用户只需要通过设置Map控件的CurrentTool属性即可,并且地图的CurrentTool属性值被预定义为枚举常量,可以用数值或者枚举字符名给出,需要的时候可以随时在帮助文档中查找对应的常量值。如在工具条的click或者菜单的click事件里相应的select case下将map1.CurrentTool设为miZoomOutTool,运行后在选定缩小工具后,鼠标移动到地图窗口上就会自动地执行缩小功能。
与传统的ESRI的mapObject相比,这里省去了好多的事情,不需要自己去定义一个变量来标记当前选定工具或者要执行的功能,同时也不用自己在地图空间的MouseClick,MouseMove,MouseDown,MouseUp等事件里写代码来细化地图的行为。
以下代码在工具条中设定地图当前工具属性,实现地图的基本浏览功能:
Private Sub ToolBarMain_ButtonClick(ByVal Button As ComctlLib.Button)
'ClearLayer OpenGeoDataSet SaveMap AddLayer ZoomIn ZoomOut Pan FullView Refresh AddRasterLayer
Select Case Button.Key
Case "ClearLayer"
Map.Layers.RemoveAll()
Case "AddLayer"
Map.Layers.LayersDlg()
Case "ZoomIn"
Map.CurrentTool = miZoomInTool
Case "ZoomOut"
Map.CurrentTool = miZoomOutTool
Case "Pan"
Map.CurrentTool = miPanTool
Case "Refresh"
Map.Refresh()
End Select
End Sub