云文档网 - 专业文章范例文档资料分享平台

实现桌面地理信息系统ArcView和VB5应用程序之间的通讯

来源:网络收集 时间:2024-04-29 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xuecool-com或QQ:370150219 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

摘要 本文简要介绍桌面地理信息系统的概念,通过分析 桌面地理信息系统ArcView和VB5应用程序之间的通讯关系,结合实例,论述了ArcView 和VB 5相互通讯在开发桌面地理信息系统中的应用价值。?关键词 桌面地理信息系统、ArcView和VB5、应用程序通讯??1. 桌面地理信息系统简介?地理信息系统是一种特定的空间信息系统,它是采用现代化的方法来采集、存储、分 析、管理、显示、模拟与地理空间分布有关数据的空间信息系统。它是现代地球科学、信息 学、环境科学、测绘遥感学、计算机科学、管理科学、应用数学以及各种应用学科有机结合 的集成产物。自60年代加拿大测量学家R.T.Tomlinson 首先提出地理信息系统这一术语以来 ,在大型机、小型机、工作站和微机平台上,相继出现了GIS的应用平台。如美国ESRI的产 品,已遍布上述四种硬件平台。由于80年代PC技术的迅速发展,以及近几年来PC硬件价格的 急剧下跌和其性能日益提高,使得桌面地理信息系统(DeskTop GIS)得到了迅速的发展。 其中在国内用得较多的有美国ESRI公司的ArcView。?2. ARCVIEW介绍?现在常用的ArcView2.1以上英文版是直观性较好的桌面地理信息系统。它集空间图形、关系 数据库、统计图形、空间分析、网络通讯、面向对象的程序设计于一体,图形用户界面直观 。而且它有自己的开发工具即Avenue,用于制作特定的ArcView 应用程序。Avenue是一种WI NDOWS环境下的面向对象的程序设计语言,ArcView 的系统功能就是由它编程实现的。?任何一个由Avenue语言开发的Windows应用程序都有一个对应的Project,Project由一些Doc ument和Script组成,而Document又由Document Window 和Document GUI 组成,所以Avenue 应用程序的模型如图1所示。图1中Document是人机交流的唯一途径,根据其功能又可分为 V iew, Table, Chart, Layout和 Script Editor五种,Document GUI 是对应于某一Document 的图形用户界面,由 Menu bar,Button bar 和Tool bar组成,分别用来对应不同的功能。图1Avenue应用程序模型?我们在具体开发桌面地理信息系统ArcView 时,发现现有的ArcVie w 系统功能并不能完全满足要求,必须对ArcView 系统重新改造,增加新的功能。由于ArcV iew 的开发语言是Avenue,它的开发效率低,所以在实际开发中既要充分利用ArcView 自身 强大的地图管理功能,又要利用高级语言(如VB5)在快速开发应用方面的长处,两者相互 结合,将取得良好效果。3. ArcView和VB5应用程序通讯方法?最通用的IPC(interprocess communication,IPC)方法是DDE、OLE和对动态联接库的外部 函数调用、文件访问以及WINDOWS剪贴板。上述方法都能使不同的WINDOWS应用程序之间彼此 通信。其中DDE方法原先是作为一种基于消息的协议在WINDOWS(3.x之前)中实现的,用来在 不同的WINDOWS应用程序之间交换信息。随着WINDOWS3.0的发布,DDE在实际的应用程序开发 中得到大量应用,这是通过使DDE服务能够利用应用程序编程接口(API)调用DDE管理库来 完成的。ArcView是通过DDE和DLL方法实现与外部应用程序通信。本文通过一个实例来详细 介绍DDE功能的使用。在实际应用中,ArcView既可作Clint,又可作Server,来实现应用程 序之间的通讯,包括发送或接受数据,执行请求,返回分析结果。通过使用DDE方法,可以 克服ArcView本身开发语言的落后性,达到充分发挥ArcView自身强大的地图管理功能,又创 造出符合时代特色的桌面地理信息系统。实践证明,采用ArcView和VB5应用程序通讯进行系 统开发是一种有效的桌面地理信息系统开发方法。4. 实例分析?在本例中,VB5 应用程序向ArcView 发出Avenue 请求以建立新的文档如views 和layouts, 而且应用程序询问ArcView 以得到当前激活的文档。此时VB5 应用程序是目标,而ArcView 是源。?如果已安装VB5 和ArcView,按照下面步骤建立应用程序:?(1) 启动VB5,建立缺省窗体Form1。?(2) 在Form1上根据下列属性建立控件,然后放大窗体以便整齐地排列控件。?ObjectProperty Setting?Text BoxNametxtDDE?Command ButtonCaptionSend Request?NamecmdRequest?Combo BoxNamecboDocType?(3) 在Form1的说明部分增加下面代码:?Const NONE=0, MANUAL=2?Sub Startup()?Dim t?Const DDE_NO_APP=282?\'this will start ArcView if it isn\'t running?On Error GoTo FireUp?txtDDE.LinkMode=NONE\'清除DDE链接?txtDDE.LinkTopic=\"ArcView|System\"\'建立对话?txtDDE.LinkMode=MANUAL\'建立人工链接?Exit Sub?FireUp:?If Err=DDENOAPP Then?ChDir \"C:\ARCVIEW2\BIN\"?t=Shell(\"arcview\",1)?t=DoEvents()?Resume?Else?MsgBox \"Unknown error.\"?Stop?End If?End Sub?(4) 在FormLoad 事件中增加下列代码:?Sub FormLoad()?cboDocType.text=\"\"?cboDocType.AddItem \"View\"?cboDocType.AddItem \"Layout\"?cboDocType.AddItem \"SEd\"Startup\'调startup 程序?End Sub?(5) 在FormUnload 事件中增加下列代码:?Sub FormUnload (Cancel As Integer)?txtDDE.LinkMode = NONE\'关闭DDE 对话?End Sub?(6) 在cboDocTypeClick事件中增加下列代码:?Sub cboDocTypeClick()?cmd=\"av.GetProject.AddDoc(\"&cboDocType&\".make) av.GetProject.GetActive.Get(0).Ge tWin.Open\"?txtDDE.LinkExecute cmd?End Sub?(7) 在cmdRequestClick事件中增加下列代码:?Sub cmdRequestClick ()?\'LinkItem是能够返回值的Avenue script?txtDDE.LinkItem = \"av.GetActiveDoc.GetName\"?txtDDE.LinkRequest?End Sub?(8) 存储VB5工程并编译成EXE 文件。?现在即可运行Visual Basic应用程序。如果ArcView 没有运行,应用程序就 会激活它。从dropdown combo box 选择一个文档名以便在ArcView中建立一个文档。要访问 当前激活的文档就敲击Send Request button,在文本框里将会显示文档名。本例所有的DDE 通讯都是通过文本框实现的。在VB5中, 任何text box, picture box和label在对话中都可 作为目标,同时任何窗体可看作源。?以上实例的运行环境为:Visual Basic 4.0以上,ArcView2.1以上,Windows3.1以上。?参考文献1、边馥苓主编,《地理信息系统原理和方法》,北京:测绘出版社,1996 年8月。2、郭达志、盛业华等编著,《地理信息系统基础与应用》,煤炭工业出版社,1997 年5月。?3、(美国) Mike McKelvy & Ronald Martinsen 著,《Visual Basic 5开发使用手 册》,机械工业出版社,1998年4月。

百度搜索“yundocx”或“云文档网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,云文档网,提供经典毕业设计实现桌面地理信息系统ArcView和VB5应用程序之间的通讯在线全文阅读。

实现桌面地理信息系统ArcView和VB5应用程序之间的通讯.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.yundocx.com/wenmi/141106.html(转载请注明文章来源)
Copyright © 2018-2022 云文档网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:370150219 邮箱:370150219@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:7 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219