循序渐进 SuperMap iDesktop 7C 插件开发

本文档介绍了如何进行SuperMap iDesktop 7C的插件开发,从认识软件、配置插件、理解关键对象到快速入门实践,详细阐述了开发过程,包括添加按钮、自定义菜单、窗体风格一致性等,旨在帮助初学者掌握插件开发技巧。
摘要由CSDN通过智能技术生成

发现很多用户在使用SuperMap iDesktop 7C时,由于行业需求的不同,使得他们不仅仅满足于现有的桌面环境,想进行扩展开发定制更适用自己项目的功能和插件,但是好多都是小白级别的,对于插件开发一头雾水,不知从何下手。接下来我就简单的谈谈如何进行SuperMap iDesktop 7C的插件开发。
1、认识 SuperMap iDesktop 7C
虽然一些SuperMap用户了解SuperMap iDesktop 7C,但是我在这里还是需要简单介绍下SuperMap iDesktop 7C,对于插件开发的学习,了解SuperMap iDesktop 7C是很有必要的。SuperMap iDesktop 7C 是一款企业级插件式桌面GIS应用与开发平台,可以高效的进行各种GIS数据处理、分析、二三维制图及发布等操作。基于它可以快速搭建自己的桌面GIS应用平台。 SuperMap iDesktop 7C 是通过 SuperMap iObjects .NET 7C 、桌面核心库和 .NET Framework 4.0 构建的插件式 GIS 应用,能够满足用户的不同需求。 SuperMap iDesktop 7C 分为 x64(64位)和 x86(32位)两个产品。
这里写图片描述
对于SuperMap iDesktop 7C来说,可以设置自己的工作环境,工作环境保存的路径为SuperMap iDesktop 7C的安装目录\WorkEnvironment\Default中的config文件中,对于插件开发,搭建好的环境必须要保存在该目录下,在SuperMap桌面中才可以看到,所搭建好的工作环境,比如新添加的按钮、下拉框等等。但是这个只是一个框架,不会实现功能,其要实现功能,还需要一个运行库(.DLL)文件,该文件存放在SuperMap iDesktop 7C的安装目录\Bin\Plugins下对应的文件夹中。综上所述,插件的配置,必须要有两个文件:config文件和运行库(.DLL)文件。
2、配置插件
我们时常拿一些别人做好的插件,来应用在自己的工程中,对于SuperMap iDesktop 7C如何配置插件:一般我们拿到的是dll和config文件,我们只需要将其放在上面所讲的位置即可,有时我们拿到的只是一个dll文件,这时我们需要编写config文件,然后将其放在对象的路径即可。
3、开发基础-关键对象
•Applicaton
是应用程序的定义。是组成桌面的基础。
Application 类对象管理的内容包括:工作空间(Workspace),用于管理应用程序内的插件的插件管理器(PluginManager),代码段编译执行器(IScript),应用程序的主窗口(IFormMain),应用程序的启动界面(ISplashForm)以及应用程序的输出信息方面的管理。
这里写图片描述
图:Application 类结构图
Application 类中提供了两个全局对象,分别为 Application.ActiveApplication 和 Application.ActiveForm,用于获取应用程序当前活动的 Application 和当前活动的窗口。•插件相关对象模型
每一个应用程序都包含了一个插件管理器(PluginManager),用于管理应用程序内的插件。
这里写图片描述
图:插件相关对象模型
•窗体相关对象模型
窗体部分的对象模型主要提供的功能包括:多文档的支持、多种类型窗口的支持、子窗口的管理、各个窗口如何对外提供功能、浮动窗口的支持和管理以及主题外观设计等。在窗体设计上,SuperMap iDesktop7C提供一个统一的基础接口IForm
这里写图片描述
图:窗体相关对象模型
•Ribbon 控件相关对象模型
SuperMap iDesktop7C实现了界面和功能的分离,各类Ribbon 控件的生成由内部实现。
这里写图片描述
图:Ribbon 控件相关对象模型
4、注册/反注册桌面开发环境
有些客户时常问,为什么我的VS新建项目时没找到“SuperMap Desktop Plugin”。
这里写图片描述
这主要是因为没有注册桌面开发环境,SuperMap iDesktop 7C 产品提供了一个注册工具,该工具可以在 Visual Studio 中集成一系列桌面开发需要使用的环境。注册工具在产品中的位置为:“安装目录/Tools/SuperMap.Tools.RegisterTemplate.exe”。详细内容查看联机帮助中的注册/反注册桌面开发环境
5、快速入门
开发思路:分析功能需求—确定扩展方式—界面设计—确定使用的模块-对象-接口—生成插件相关文件
现在我们以 Visual Studio 2012 为例进行介绍,首先我们做一个简单的输出数据集范围的程序:在【数据】选项卡-【数据集】组中增加一个功能按钮“输出数据集范围”,把当前选中的数据集范围,输出到输出窗口中:
这里写图片描述
1.首先启动 Visual Studio 2012新建工程。
执行“文件”->“新建项目”弹出下

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值