使用ArcMap Add-in 创建交互窗体
2017-07-06 14:25
141 查看
在ArcMap使用过程中我们常常想开发一些小功能插件,在此就要用到add-in插件的开发方法,创建add-in插件的步骤就不细述了。在此说明如何在ArcMap中添加自定义交互窗体(之所以将这个是因为网上找到的教程中好像没有讲一些细枝末节的东西,在此讲明一下)
首先创建一个DockableWindow类型的程序集:打开VS,右击解决方案,选择“添加”,选择新建项,在ArcGIS模板中选择
然后选择Add-in插件类型,在此选择Dockablewindow
建成完毕后在设计窗口添加必要的控件,然后右键点击程序集,选择“生成”,生成dll,
新建另一个add-in程序集,在此以Button类型为例,在它的Config.Designer.cs文件中相应位置做如下修改:
其中a是上一个DockableWindow程序集的名字
b为该程序集Config.esriaddinx文件中记录的DockableWindow id。
然后在Button程序集的引用中添加刚刚生成的DockableWindow的dll,编写相应的DockableWindow弹出代码如下,右键点击Button程序集,选择“生成”或是“重新生成”,若重新生成出现问题,则将所有ESRI控件改成“复制到本地--true”。
参考代码(OnClick事件中): IDockableWindowManager pDocWinMgr = ArcMap.DockableWindowManager;
UID uid = new UIDClass();
uid.Value = ThisAddIn.IDs.DockableWindow1;
IDockableWindow pTOC = pDocWinMgr.GetDockableWindow(uid);
if (pTOC.IsVisible())
pTOC.Dock(esriDockFlags.esriDockRight);
在ArcMap中使用前要先安装这两个程序集生成的add-in插件,,DockableWindow的插件在程序集的Debug文件夹下点击安装,其在ArcMap中不可见,只有在运行的时候才会出现,Button的插件在Customize中添加安装即可
首先创建一个DockableWindow类型的程序集:打开VS,右击解决方案,选择“添加”,选择新建项,在ArcGIS模板中选择
然后选择Add-in插件类型,在此选择Dockablewindow
建成完毕后在设计窗口添加必要的控件,然后右键点击程序集,选择“生成”,生成dll,
新建另一个add-in程序集,在此以Button类型为例,在它的Config.Designer.cs文件中相应位置做如下修改:
其中a是上一个DockableWindow程序集的名字
b为该程序集Config.esriaddinx文件中记录的DockableWindow id。
然后在Button程序集的引用中添加刚刚生成的DockableWindow的dll,编写相应的DockableWindow弹出代码如下,右键点击Button程序集,选择“生成”或是“重新生成”,若重新生成出现问题,则将所有ESRI控件改成“复制到本地--true”。
参考代码(OnClick事件中): IDockableWindowManager pDocWinMgr = ArcMap.DockableWindowManager;
UID uid = new UIDClass();
uid.Value = ThisAddIn.IDs.DockableWindow1;
IDockableWindow pTOC = pDocWinMgr.GetDockableWindow(uid);
if (pTOC.IsVisible())
pTOC.Dock(esriDockFlags.esriDockRight);
在ArcMap中使用前要先安装这两个程序集生成的add-in插件,,DockableWindow的插件在程序集的Debug文件夹下点击安装,其在ArcMap中不可见,只有在运行的时候才会出现,Button的插件在Customize中添加安装即可
相关文章推荐
- 【ArcGIS Add-in编程】如何创建ArcMap的下拉菜单插件
- 使用反射实现根据名称动态创建窗体的几种方法。
- 使用JFreeChart来创建基于web的带交互功能的PIE图表(二)
- javascript---使用createElement动态创建HTML对象.窗体传值
- DevExpress.XtraBars.Ribbon控件使用系列 (1)创建Ribbon窗体
- VS.NET RC5无法创建Add-IN工程解决办法(其它问题也可参阅本办法)
- 使用API创建窗体(类似VC的创建过程)
- 欢迎使用 FreeCode for VS60/VS2005 Add-in
- 欢迎使用 FreeCode for VS60/VS2005 Add-in
- Outlook2003中project web access(2007) add-in安装后,不能使用
- 使用反射实现根据名称动态创建窗体的几种方法。
- delphi开发日志——基窗体,使用面向对象编程的编程思想创建基类
- 欢迎使用 FreeCode for VS60/VS2005 Add-in
- 欢迎使用 FreeCode for VS60/VS2005 Add-in
- 使用JFreeChart来创建基于web的带交互功能的PIE图表(一)
- 欢迎使用 FreeCode for VS60/VS2005 Add-in
- delphi开发日志——基窗体,使用面向对象编程的编程思想创建基类
- 使用图片创建不规则窗体 windows sdk
- 使用API创建窗体
- [转贴]使用VS.NET 2003 快速开发MS Office Add-In