欢迎来到天天文库
浏览记录
ID:26084225
大小:9.71 MB
页数:235页
时间:2018-11-24
《arcengine_开发文档(arcgis ao开发)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、ArcEngine开发1.基础篇1.1.开发环境1.1.1.如何在ArcMap的VBA环境中编程ArcMap是ArcGIS家族的成员之一,它内置了一种集成编程环境―VBA(VisaulBasicforApllications)。通过VBA编程,用户不但可以扩展ArcMap的菜单、工具条等,而且可以完成大多数用户的特定需求。ArcMap中VBA编程的方法有两种,一种是写VBA宏,另一种是创建UIControl并在其事件中写入实现用户需求的代码。下面列出两种方法的一般步骤。方法一:写VBA宏(直接在VBA编辑器中编辑函数和过程)1、如图1
2、,单击菜单栏中的命令,选择的项,直接启动ArcMap的VBA编辑器;或者选择的项,进入如图2所示Macro对话框,在“MacroName”文本框中输入要创建的宏的名称,并点按钮,启动VBA编辑器。图1启动Macro对话框/启动VBA编辑器-223-图2Macro对话框2、在图3所示的窗口中,用户可以根据实际选择在Normal节点或者Project节点的ThisDocument、Forms、Modules中编写宏(函数或过
3、程),Normal节点下所写的宏系统自动保存,除非用户删除,否则它将始终存在并在任何工程中都有效;而在Project节点下所写得宏随工程保存(如不保存工程,则宏也将不被保存),并只在工程中有效。图3VBA编辑器(VBE)-223-3、运行VBA宏在VBA编辑器中写好VBA代码后,有两种方式运行:第一,点击VBA编辑器工具条中的(运行)按钮,可立即运行写好的代码;第二,退出VBA编辑器,重新启动Macro对话框,如图2,选择要运行的VBA宏名称,点击按钮即可运行相应的VBA宏。方法二:创建UIControl(交互式VBA编程)
4、1、用鼠标右击任何工具栏(条),在弹出的上托式菜单中选择菜单项,如图4,进入图5所示的Customize对话框。图4启动“Customize”对话框2、切换到“Customize”对话框的“Commands”页,选中“UIControls”后点击按钮,进入图6所示的“NewUIControl”对话框。3、在“NewUIControl”对话框中,用户可根据需要选择UIControl类型:UIButtonControl:创建Button;UIToolControl:创建与Map交互的Too
5、l;UIEditBoxControl:创建EditBox;-223-UIComboBoxControl:创建ComboBox。最后点击按钮只创建UIControl或者点击按钮创建UIControl并进入VBA编辑器。与方法一不同,此时应在UIControl的事件中进行VBA编程。图5Customize对话框图6NewUIControl对话框4、UIControl创建后,在图5所示的“Customize”对话框选中UIControl并将其拖置到任意工具条上,用户便可象使用系统已有的Contr
6、ol一样使用所创建的UIControl。-223-1.1.1.如何在VB环境中利用ArcObjects组件开发ActiveXDLL1.1.1节讨论了如何在ArcGis的VBA环境中编程,虽然通过这种方式可以完成大多数用户的定制需求,但是,在某些情况下,对于特殊的应用,用户需要脱离ArcGIS环境而在VB开发环境中开发外部独立的应用程序,这种外部独立的应用程序有两种形式:ActiveXDLL和StandardEXE。StandardEXE的开发将在1.1.4中讨论,本节将讨论ActiveXDLL的开发,其关键是引用ArcObjects对
7、象库和实现ArcObjects接口(例如ICommand,ITool,IToolBar等)。下面介绍在VB环境利用ArcObjects组件开发ActiveXDLL的一般步骤。1、启动VB开发环境,在图7所示的“NewProject”对话框中选择“ActiveXDLL”项,并点击<打开>按钮,进入VBE环境。图7NewProject对话框2、引用ArcObjects对象库:首先点击菜单中的项,如图8,进入对象库引用对话框,如图9。-223-图8启动对象库引用对话框图9对象库引用对话框-223-3
8、、对象库引用对话框(图9)中选中“EsriArcMapObjectLibrary”和“EsriObjectLibrary”两项,并点击按钮,返回VBE环境。4、一般在类模块中写入实现特定ArcObjects接口的
此文档下载收益归作者所有