- 1、本文档共78页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
GeoMedia应用开发手册-Read.doc
- PAGE 76 -
《GeoMedia4.0 二次开发培训手册》
介绍
“自动化”(Automation)这一术语将在本文频繁出现,本章主要介绍与自动化编程相关的术语、分析GeoMedia 自动化模型、介绍如何使用GeoMedia开发应用系统。
主题
1、 面向对象程序设计和OLE
2、 什么是COM?
3、 OLE的优点
4、 什么是自动化
5、 对象管理
6、 术语
7、 驱动Excel自动化
8、 GeoMedia的自动化
9、 GeoMedia自定义的方法
目标
本章结束后,您将能够掌握如下内容:
使用公共编程术语
浏览GeoMedia自动化模型
描述GeoMedia开发的三种技术
通过定制GeoMedia创建独立应用
使用GeoMedia对象
(GDatabase GRecrdset GField MapView Legend LegendEntries Style DataView)
示范/演示
介绍GeoMedia
通过自动化驱动Execl
练习
浏览GeoMedia自动化模型
应用框架与连接
创建与操纵记录集
创建地图浏览控件
风格
其他
打印
空间查询
缓冲区分析
空间定位
多键排序
数据浏览
面向对象编程和OLE
在使用GeoMedia开发应用系统前,首先需要了解的是“对象”和“自动化”这两个术语。“对象”一词与“面向对象”程序设计密切相关。许多年前诞生的面向对象技术,在今天的软件开发环境中仍然受到相当的重视。面向对象是一种把数据及其操作封装在组件或对象里的软件组织方式。因此,在GeoMedia中,对象就是封装了一定功能的软件组件。
“自动化”是软件对象之间的通信处理,这些软件对象是创建应用系统的组成部分。在学习怎样使用自动化之前,首先需要浏览一下当今软件技术框架的发展历史。早期的OLE指对象连接与嵌入(Object Linking and Embedding)。在本文中,OLE还允许创建对象,并建立他们之间的关联。比如,您可以在Word文档中嵌入Excel表单,并能通过双击表单激活Excel。现在的OLE增加了以下技术:
组件(或对象)的集成
通过二进制通信标准实现语言无关的开发
对组件或对象界面的抽象
除此之外,OLE还包括三种技术:复合文档、自动化和OLE控件。复合文档是一种可以同时包含本地数据和多个在其它应用程序中创建的对象。另外,OLE还具有就地激活与拖-放功能。OLE自动化可以被看作一个程序向另一个程序提供可编程对象。例如,Excel提供了能在Visual Basic应用程序中操纵的表单和统计图对象;又如,GeoMedia提供了地图显示(MapViews)和管道(Pipes)对象,这些对象可以通过Visual Basic 或Visual C++程序来操纵。
OLE控件体现了许多OLE技术,包括COM、可连接的对象、复合文档、属性页、OLE自动化和对象持续性。控件是一种通常情况下可视的软件组件(比如:按钮、列表框、检查框),是为创建应用程序界面提供的砖头。自定义控件是用户为解决某些特定问题而自行开发的控件。
显然,这些主题需要更加深入的分析,才能有效的使用它们进行开发。不过,通过这些概念的介绍,您可以了解到 GeoMedia在那些方面适应了当今的软件体系结构。我们主要着眼于OLE系列技术中与自动化相关的部分。
第二节 何谓COM
尽管本文主要讨论如何自定义GeoMedia,但仍然有必要简要地概括一下组件对象模型(COM),因为它是GeoMedia体系结构的基础。即使您从不需要设计可编程对象,理解这一基础理论也是非常有益的。
OLE是建立在COM基础之上的。COM定义并且实现了允许软件组件(包括对象、应用程序和服务)之间实现交互的机制。也就是说,COM定义了软件组件之间的通讯协议。COM还描述了接口管理、状态报告、以及使用系统注册表解决的全球性的唯一识别码。与此同时,COM还定义了应用程序内部的对象之间,以及不同应用程序的对象之间的交互。
COM的实现就是接口的实现,COM对象是通过COM接口得以交互的。可以认为接口象生产者和消费者之间的合同,它定义了软件的目标和行为。接口由COM对象的一系列与语义学相关的功能或方法组成。如同不能违背合同一样,接口一旦被定义,就不能改变。作为应用程序开发者,你需要这个合同来防止应用程序所依赖的软件的任何改变。
组件式对象模型是OLE可扩展体系结构的关键所在,它提供了建立OLE其余部分的基础。COM是组件之间进行通信的二进制标准,COM并不依赖于Windows NT。微软和其它公司正在他们的操作系统上实现各自的COM库,这些操作系统除了Windows以外,还包括Unix和Macintosh。如果希望了解更多关于COM的资料,请访问微软开发者网络(MSDN.M)
文档评论(0)