3_ArcGIS Desktop Add-in插件开发.doc
文本预览下载声明
ArcGIS Desktop Add-in插件开发
作者:张鑫 邮箱: HYPERLINK mailto:zhangxin@ zhangxin@ 发布时间:2014-12-01 09:54:44 阅读(179)
1????????概述
ArcGIS在10版本之后引入了几个新的创新的功能,使您更容易定制和扩展ArcGIS桌面应用,包括新的桌面插件模型。
Add-in可以理解为包含多种UI和非UI对象的插件包,其中支持的对象类型包括:
a)?交互类
1)?按钮
按钮是一种简单的控制,可以出现在工具栏上。
2)?工具
工具也是一种简单的控制,可以出现在工具栏上或菜单中。
3)?组合框
组合框提供了一个项目的下拉列表,可以选择提供一个可编辑的输入区域。
4)?多项目
多项目是在运行时动态创建菜单项的集合。
5)?应用程序扩展
应用程序扩展用于组件之间的协调活动,如按钮、工具和停靠窗口。应用程序扩展经常用于侦听和响应由宿主应用程序公开的各种活动。应用程序扩展,可配置为自动加载或在加载它们的相关的应用程序时自动启动,也可以出现在标准ArcGIS的扩展对话框。
6)?编辑器扩展
编辑器扩展可以通过插入框架直接进入编辑工作流程。相对于应用程序扩展,编辑器扩展加载项被加载编辑会话时需要开始编辑。你也可以通过创建编辑器扩展自定义编辑会话的行为
7)?可停靠窗口
在ArcGIS桌面应用程序的显示中,可停靠窗口是浮动或停靠的窗口。在可停靠窗口中你可以填充的内容分为:图表、幻灯片、视频、地图或包括Esri自定义对话框控件。
b)?容器类
1)?工具栏
工具栏可以承载按钮、工具、菜单、工具栏和组合框。
2)?工具盘
工具盘提供了一种紧凑的方式将一组相关的工具集。
3)?菜单
菜单提供了一个菜单项的下拉列表。
4)?右键菜单
右键菜单提供了一个右键弹出的菜单项的下拉列表。
2????????开发流程
2.1?开发环境
ArcGISAdd-in的开发环境为VS2010+ArcGIS Desktop10.1+ArcGIS Engine 10.1+Win 7 64bit。
2.2开发步骤
2.2.1???????项目需求
查找出面积小于给定值的地块,并合并到相邻的地块中最大的地块。
2.2.2???????功能实现
a)????????新建解决方案
启动VS2010,新建项目。
点击确定,新建一个项目。
b)???????进入Welcome页面设置
Add-in Name:插件的名称;
Company/Publisher:插件的制作公司或发布者;
Author:插件的制作者;
Description:插件的描述;
Image:插件的图标。
c)????????进入Add-in Types页面
Add-in Types页面用于设置创建的插件的类型。
选择Add-in Types,此处选择按钮。
Class Name:类的名称;
Caption:按钮上显示的文本;
Image:按钮上的图标;
Category:所属Command的分类;
Tooltip:鼠标在上面时状态栏显示的文字;
Description:工具的描述。
点击Finish完成设置
d)???????文件组织
Config.esriaddinx文件是一个XML文件,它是一个配置文件,里面包含了项目的相关配置,是自动生成的。内容如下:
ESRI.Configurationxmlns=/Desktop/AddInsxmlns:xsi=/2001/XMLSchema-instance
? NameFeaturesMerge/Name
? AddInID{94327fc0-a266-44a1-8797-3525955249cf}/AddInID
? Description查找出面积小于给定值的地块,并合并到相邻的地块中最大的地块。/Description
? Version1.0/Version
? ImageImages\FeaturesMerge_1.png/Image
? Authorzx/Author
? CompanyHigis/Company
? Date2014/11/17/Date
? Targets
??? Targetname=Desktopversion=10.1 /
? /Targets
? AddInlanguage=CLR4.0library=FeaturesMerge.dllnamespace=FeaturesMerge
??? ArcMap
????? Commands
??????? Buttonid=Higis_FeaturesMerge_FeaturesMergeclass=FeaturesMergemessage=查找出面积小于给定值的地块,并合并到相邻的地块中最大的地
显示全部