ArcGIS中的AddIn开发示例
AddIn开发的插件效率高、操作简单、容易管理、方便共享。它还可以和Python结合(后面的博文中应该会涉及到),非常强大。下面简单描述一下ArcGIS中的AddIn开发过程:
1.在安装ArcGIS、AO和VS的环境下,新建项目ArcMap Add-in;
2.填写基本信息,这些信息将自动生成到Xml文件中;

[Add-in Name]:是最后生成的*.esriAddIn文件的名称

其他信息,最后可在加载项管理器中看到

3.下一步,设置Add-in工具信息。

[Class Name]:类名,即VS中看到的类名
[Caption]:命令标题,即自定义命令时的名称
[Image]:所有显示的图标


[Category]:自定义命令时的类别
[Tooltip]:鼠标放在上面的提示(名称)
[Desription]:鼠标放在上面的提示(描述)
[Help]:帮助文档,这里没有设置
4.在Onclick中添加自己的代码,这里是简单的加载shp文件的代码;

5.生成调试,因为Addin程序是ArcGIS的插件程序,本身没有单独的主程序,调试时,选择附加到进程(选择ArcMap,第一次要打开一个ArcMap)。当然,如果程序没有问题,可直接生成*.esriAddIn文件在ArcMap中加载使用。



6.加载使用

注意事项:
(1)断点调试时:当前不会命中断点,还没有加载该文档加载任何符号。ArcGIS中Addin开发时,目标框架版本必须是3.5都能使用断点调试。

(2)启动附加程序 ArcMap测试完毕后,第一次要先关ArcMap(而不是先停止调试),这样,才能保证工具始终加载在工具栏中。
ArcGIS中的AddIn开发示例的更多相关文章
- ArcGIS AddIn开发笔记(一)
学习AddIn开发,遇到了些稀奇古怪的问题,网上的资料少之又少. (1)AddIn开发,主要是通过ArcMap静态变量,与主程序中的数据等进行交互 (2)failed to register Add ...
- Arcgis Add-In开发入门实例
作为一个本科侧重于应用,工作之后却做了开发的程序员来说,做GIS,开发应该是一门必修课,只是,苦于各种原因吧,做GIS应用的人会开发的很少,做GIS开发的大部分都是计算机出身,痛心疾首啊-- 不好意思 ...
- ArcGIS AddIN开发异常之--“ValidateAddInXMLTask”任务意外失败
ArcGIS AddIN开发时,产生如下异常错误 2 “ValidateAddInXMLTask”任务意外失败.System.NullReferenceException: 未将对象引用设置到对象的 ...
- ArcGIS Add-in开发(一)--获取选定要素的属性值
刚刚接触AE开发,记录一下自己的学习心得! 欢迎大家一起交流探讨! 最近做大赛,突然想到可以让项目更加直观的操作,就在项目中加了幅底图(底图很简单) 我想在arcmap中选中相应的要素后,在后台通过写 ...
- ArcGIS API for javascript开发笔记(二)——解决ArcGIS Service中的服务在内网环境下无法进行javascript预览问题
感谢一路走来默默支持和陪伴的你~~~ ----------------------------拒绝转载-------------------------------- 1.问题说明 在使用ArcGIS ...
- XCode和Cocoa在开发中使用第三方dylib示例
XCode和Cocoa在开发中使用第三方dylib示例 www.educity.cn 发布者:yukowang 来源:网络转载 发布日期:2014年06月13日 XCode和Co ...
- ArcGIS Runtime for Android开发教程V2.0(3)基础篇---Hello World Map
原文地址: ArcGIS Runtime for Android开发教程V2.0(3)基础篇---Hello World Map - ArcGIS_Mobile的专栏 - 博客频道 - CSDN.NE ...
- ArcGIS Runtime for Android开发教程V2.0(2)开发环境配置
原文地址: ArcGIS Runtime for Android开发教程V2.0(2)开发环境配置 - ArcGIS_Mobile的专栏 - 博客频道 - CSDN.NET http://blog.c ...
- ArcGIS API for JavaScript开发初探——HelloMap
1.前言 在开始ArcGIS API for JavaScript开发之前我们需要了解一些基本的知识: 1.开发工具选什么? 前端技术的开发工具选择是一个仁者见仁智者见智的问题,有人喜欢Hbuilde ...
随机推荐
- django: ListView解读
[转载注明出处: http://www.cnblogs.com/yukityan/p/8039041.html ] django内置列表视图: # 导入 from django.views.gener ...
- mysql长连接
长连接是干嘛的: 它是做连接复用的: 在openresty中的lua-resty-mysql 里 connect方法去连接mysql时会去ngx_lua cosocket连接池中寻找是否有可用连接 ...
- MyTalkStuffHomeIcon-2
圆形.高清头像素材专用-2
- centos7安装maven
下载maven 下载地址:http://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.3.9/binaries/apache-maven-3. ...
- 华为S5300系列交换机V100R005SPH020升级补丁
S23_33_53-V100R005SPH020.pat 附件: 链接:https://pan.baidu.com/s/1-qgNEtRsZbNnC4eK4DTctA 密码:wpn3
- WPF中删除打开过的图片
在WPF中,当我们删除打开过的图片时,往往会遇到"...无法删除,文件正在被另一个进程使用"的异常.即使当前文件是打开后关闭过的也不行. 这个问题的原因很简单,是因为WPF的缓存策 ...
- MultCloud – 支持数据互传的网盘管理
MultCloud https://www.multcloud.com/ 是一款在线服务,可以在一个地方管理众多网盘,支持国产百度盘, 最具有特色的地方是你可以直接在 MultCloud 里操作将 D ...
- Javascript 面向对象编程(一):封装(转载)
Javascript是一种基于对象(object-based)的语言,你遇到的所有东西几乎都是对象.但是,它又不是一种真正的面向对象编程(OOP)语言,因为它的语法中没有class(类). 那么,如果 ...
- 怎样让你的APK跑在 com.android.phone 进程
首先:为什么要跑在 com.android.phone 进程 这还用问,在同一个进程里就能够干非常多事情了这是黑客行为 为什么能跑在统一进程? Google 在设计 Dalivk 虚拟机的时候就考虑到 ...
- Coursera课程《大家的编程》(Python入门)中课程目录
Getting Started with Python Getting Started with Python is the first course in the specialization Py ...