用VC++进行MapX二次开发::之三------使用MapX工具

类别:VC语言 点击:0 评论:0 推荐:

用VC++进行MapX二次开发
                     之三------使用MapX工具
Writer:Bluedy  [email protected]
 对于一个“标准”的Windows应用程序,一般都有一个工具栏。如果你用过某个GIS系统,一定用过工具栏上的工具。工具栏上的工具为我们提供了一个快速调用某个功能的捷径。我们这就来创建一个MapX的工具栏。
 先来实现什么功能呢?我们来个模仿Mapinfo: 放大工具、 缩小工具。
 要对图象进行放大缩小,该用什么算法呢?不必你操心!我们是进行二次开发,这些算法的实现,MapX都有了,我们只需要调用它的功能就行了。更绝的是,MapX已经内建了常用的“工具”。放大工具就是miZoomInTool,缩小工具就是miZoomOutTool。怎么使用能?好说,CmapX类有个CurrentTool函数,“属性和函数的名字一样”------当前工具,调用之即可。还记得前面的吧------Get和Set,现在不需要“获得”,而要“设置”,那么,该调用的函数为:
m_ctrlMapX.SetCurrentTool(miZoomInTool);//放大工具
m_ctrlMapX.SetCurrentTool(miZoomOutTool);//缩小工具

至于程序的实现,就是为工具栏的按钮添加消息处理函数,在函数体内添加上面的代码就可以了。调式运行,看看效果吧。
 简单吧?就这么简单。别人都说vb进行MapX二次开发简单,你说呢?
 MapX内建的工具有:
 miArrowTool;
 miPanTool ;
 miCenterTool ;
 miZoomInTool ;
 miZoomOutTool ;
 miSymbolTool ;
 miTextTool ;
 miSelectTool ;
 miRadiusSelectTool;
 miRectSelectTool ;
 miPolygonSelectTool ;
 miLabelTool ;
 miAddLineTool ;
 miAddPolylineTool ;
 miAddRegionTool ;
 miAddPointTool;

本文地址:http://com.8s8s.com/it/it1367.htm