1. ArcMap 的定制与开发 A、 单击Tools—>Customizes…命令,打开定制对话框后,可以对 ARCMAP 中的工具条,菜单项,进行定制,可以加载用户自定义的宏、 VBA 程序、 DLL 命令等
B、 定制VBA 程序
Tools—>Visual Basic Editor
打开编辑器: 在 Project(NewMap
mxd)下插入一个新的UserForm1
并在新建的窗体中添加一个命令按钮,Caption 为 VB 窗体示例
双击命令按钮为其添加点击事件程序
C、 Tools—>Macros…打开宏对话框
并新建一个名为 MyMacro 的宏,其中加载宏(A)中选择 Project(NewMap
并在 VBA 编辑器中为该宏编写代码
其中宏 MyMacro1 直接运行上面的VBA 窗体 D、打开 Customize 对话框 ,选择 Commands 栏
通过 New UIcontrol,用户可以定制 4 类命令,按钮、编辑框、工具命令、组合框
在此先创建一个 NewToolbar: 将刚才的宏拖到新建的工具条即可
E、编写 VB 的 DLL 动态链接库
上面介绍的定制方法必须在 ARCMAP 环境下进行,离不开环境,且代码随文档保存,难以进行深层次开发,代码解释执行,效率差,保密性差,但相对容易些,ARCMAP 已经提供了现成的对象与接口
下面开始介绍通过 DLL 操作 ArcObjects 定制 ARCGIS 命令
这种开发模式,最好通过改写已做好的示例程序来实现,不必要自己编写所有的代码
建议用 VB编写 DLL,其他语言也可,但范例代码少
打开VB,新建ActiveX DLL 工程
在工程菜单下打开引用对话框,为该工程添加 ESRI 的库文件
其中 ESRI Object library项一定要引用
工程中加入一