分类: C/C++
2009-05-24 15:45:33
这是一个以ArcEngine控件为基础的AE应用程序。
系统采用Microsoft Visual Studio VC++2005开发完成。系统是一个灵活的、可扩展的一个架构系统,支持丰富的接口插件。系统的插件采用COM,只要是能开发COM组件的编程语言,都可以用来扩展AEMap的系统功能。我自己开发的插件,都采用VC++实现,也测试了采用C#语言开发的插件,不管什么语言实现的插件,都在AEMap中运行的很好。
AEMap提供的UI插件接口:
1. 命令接口ICommand(提供弹出菜单的支持)。
2. 编辑接口IUIEdit。
3. 下拉列表接口IUIComboBox。
4. 工具条上的弹出菜单IAEUIControlPopup。
5. 停靠栏(分临时性的和自动随系统启动加载的两种)。
6. 色彩选择插件。
7. 全局接口对象插件。插件之间需要信息沟通时候,可以采用这个全局插件来实现。
8. 弹出菜单。插件可以把自己挂接在系统弹出菜单上,弹出菜单有三种:地图控件、打印页控件以及图层目录控件。
9. 命令行输入。系统提供的一个命令行输入事件,任何插件都可以监听到这个输入事件,对于需要接收键盘输入命令的插件,这个事件接口非常有用。
该系统扩展性极强,除了采用COM插件之外,你甚至可以采用JavaScript语言来增强AEMap的功能。系统提供方便的插件管理功能,提供插件快捷键的设置。所有的系统设置信息均保存在XML的配置文件中,不保存在注册表,目的是方便该系统在不同电脑上复制使用。
该系统有如下特点:
² 提供丰富多样的插件类型。
² 灵活的界面定制功能。可以任意新建或者定制菜单、工具栏,所有插件都是采用拖放方式摆放在系统界面的任意位置,命令插件都可以灵活方便的设置快捷键。
² 提供命令行的输入方式。每个插件都可以监听框架的命令行输入信息。
² 作为应用框架系统本身具有的优势:模块化、可重用性、可扩展性、简单性以及可维护性。
² 美观的框架界面。框架界面采用Xtreme ToolkitPro,因此界面UI元素具有方便、灵活、强大的定制功能。
² 可以同时支持多种ArcEngine版本。不需要再次编译,系统直接可以运行在不同版本的ArcEngine环境之下。
² 完全不同于ArcEngine的插件命令接口,整个系统自成体系。