2016-01-27 桌面GIS应用软件的开发方式

1、VBA桌面扩展

1)VBA是简化的Visual Basic语言及其子集

2)用于支持VBA扩展的Windows程序,不能离开宿主程序独立运行

3)VBA定制和开发的代码均存储于本身程序数据工作文件中

4)VBA开发于ArcGIS 10.1转为ADD-IN方式并官方强调并建议不使用VBA进行软件开发,并推荐利用Python语言扩展

5)VBA程序安装包不再包含Desktop安装内,需要独立从安装光盘里进行安装

6)VBA开发分为宏(自动执行的操作命令集)和UIControl(可交互的宏)两种方式

7)VBA程序是事件驱动的,常用MouseDown事件

1.1、宏开发方式

      代码实现——创建临时图层

2016-01-27 桌面GIS应用软件的开发方式_第1张图片
VBA 宏
2016-01-27 桌面GIS应用软件的开发方式_第2张图片
VBA 宏界面
2016-01-27 桌面GIS应用软件的开发方式_第3张图片
VBA 宏程序界面
2016-01-27 桌面GIS应用软件的开发方式_第4张图片
VBA 宏源代码
2016-01-27 桌面GIS应用软件的开发方式_第5张图片
VBA 宏加载
2016-01-27 桌面GIS应用软件的开发方式_第6张图片
VBA 宏加载
2016-01-27 桌面GIS应用软件的开发方式_第7张图片
VBA 宏样式
2016-01-27 桌面GIS应用软件的开发方式_第8张图片
功能实现效果

1.2、UIControl用户界面控制

1)VBA宏的可交互替代,进行交互式开发

2)UIControl类型与用途


2016-01-27 桌面GIS应用软件的开发方式_第9张图片
功能表
2016-01-27 桌面GIS应用软件的开发方式_第10张图片
界面
2016-01-27 桌面GIS应用软件的开发方式_第11张图片
界面
2016-01-27 桌面GIS应用软件的开发方式_第12张图片
界面
2016-01-27 桌面GIS应用软件的开发方式_第13张图片
源代码
2016-01-27 桌面GIS应用软件的开发方式_第14张图片
ArcMap界面
2016-01-27 桌面GIS应用软件的开发方式_第15张图片
功能实现效果

2、DLL动态库开发

1)弥补VBA无法脱离宿主程序运行、安装部署不易、开发规模受限制

2)DLL动态链接库是Windows平台下的一种类文件编译格式

3)被任何支持COM规则的语言所支持和引用

4)AO组件本身的物理文件是DLL文件

5)开发环境脱离Desktop软件

6)封装性好、功能传递(.dll文件)

7)利用ESRIRegAsm.ex注册和反注册DLL文件

2016-01-27 桌面GIS应用软件的开发方式_第16张图片
模版选取
2016-01-27 桌面GIS应用软件的开发方式_第17张图片
工程配置
2016-01-27 桌面GIS应用软件的开发方式_第18张图片
工程界面
2016-01-27 桌面GIS应用软件的开发方式_第19张图片
添加模版
2016-01-27 桌面GIS应用软件的开发方式_第20张图片
Base Tool模板
2016-01-27 桌面GIS应用软件的开发方式_第21张图片
工程配置
2016-01-27 桌面GIS应用软件的开发方式_第22张图片
模板工程信息
2016-01-27 桌面GIS应用软件的开发方式_第23张图片
源代码
2016-01-27 桌面GIS应用软件的开发方式_第24张图片
加载命令
2016-01-27 桌面GIS应用软件的开发方式_第25张图片
DLL文件

注册dll文件后即可类似宏命令添加到ArcMap中使用,也可将dll文件分享

2016-01-27 桌面GIS应用软件的开发方式_第26张图片
工具使用命令
2016-01-27 桌面GIS应用软件的开发方式_第27张图片
注册DLL文件

3、ADD-IN插件扩展

1)Add-in分为基于.NET和基于Python两种(推荐Python)

2)容易创建(Add-in模版)、更易共享(Add-in是Z包括配置文件、程序、资源的ZIP文件)、更加安全(可以对Add-in文件进行数字签名)、更易安装和管理(提供Add-in管理工具)

3)Add-in工程包括两部分内容:Config.esriaddinx(配置信息)和代码文件.cs(类文件)


2016-01-27 桌面GIS应用软件的开发方式_第28张图片
2016-01-27 桌面GIS应用软件的开发方式_第29张图片
Add-in工程建立
2016-01-27 桌面GIS应用软件的开发方式_第30张图片
Add-in工程建立
2016-01-27 桌面GIS应用软件的开发方式_第31张图片
源代码
2016-01-27 桌面GIS应用软件的开发方式_第32张图片
Add-in文件

直接双击文件注册即可或者【自定义\命令->Add from file…】

2016-01-27 桌面GIS应用软件的开发方式_第33张图片
Add from file
2016-01-27 桌面GIS应用软件的开发方式_第34张图片
功能实现效果

4、AE独立开发

4.1、简单流程

此处应有流程图

1)GIS功能脱离ArcGIS平台软件独立运行

2)控件基础GIS程序功能快速搭建

2016-01-27 桌面GIS应用软件的开发方式_第35张图片
模版选取

2016-01-27 桌面GIS应用软件的开发方式_第36张图片
引用配置
2016-01-27 桌面GIS应用软件的开发方式_第37张图片
许可配置

控件编程顺序:不可视的LicenseControl控件进行许可授权->MapControl控件显示->TOCControl目录树->ToolbarControl工具条及工具按钮

2016-01-27 桌面GIS应用软件的开发方式_第38张图片
控件拖动
2016-01-27 桌面GIS应用软件的开发方式_第39张图片
控件绑定
2016-01-27 桌面GIS应用软件的开发方式_第40张图片
工具添加

对添加的控件绑定MapControl控件,可【属性】绑定或代码初始化时绑定

2016-01-27 桌面GIS应用软件的开发方式_第41张图片
绑定控件源代码
2016-01-27 桌面GIS应用软件的开发方式_第42张图片
控件属性配置
2016-01-27 桌面GIS应用软件的开发方式_第43张图片
程序运行结果

你可能感兴趣的:(2016-01-27 桌面GIS应用软件的开发方式)