天天被操天天被操综合网,亚洲黄色一区二区三区性色,国产成人精品日本亚洲11,欧美zozo另类特级,www.黄片视频在线播放,啪啪网站永久免费看,特别一级a免费大片视频网站

現(xiàn)在位置:范文先生網(wǎng)>理工論文>計(jì)算機(jī)信息技術(shù)>實(shí)現(xiàn)桌面地理信息系統(tǒng)ArcView和VB5應(yīng)用程序之間的通訊

實(shí)現(xiàn)桌面地理信息系統(tǒng)ArcView和VB5應(yīng)用程序之間的通訊

時(shí)間:2023-02-21 00:12:22 計(jì)算機(jī)信息技術(shù) 我要投稿
  • 相關(guān)推薦

實(shí)現(xiàn)桌面地理信息系統(tǒng)ArcView和VB5應(yīng)用程序之間的通訊

沈業(yè)龍 潘丹 謝慶勝 張來平?

實(shí)現(xiàn)桌面地理信息系統(tǒng)ArcView和VB5應(yīng)用程序之間的通訊

(安徽省地理信息中心)??

摘要    本文簡要介紹桌面地理信息系統(tǒng)的概念,通過分析 桌面地理信息系統(tǒng)ArcView和VB5應(yīng)用程序之間的通訊關(guān)系,結(jié)合實(shí)例,論述了ArcView 和VB 5相互通訊在開發(fā)桌面地理信息系統(tǒng)中的應(yīng)用價(jià)值。?

關(guān)鍵詞  桌面地理信息系統(tǒng)、ArcView和VB5、應(yīng)用程序通訊??

       1. 桌面地理信息系統(tǒng)簡介?

      地理信息系統(tǒng)是一種特定的空間信息系統(tǒng),它是采用現(xiàn)代化的方法來采集、存儲、分 析、管理、顯示、模擬與地理空間分布有關(guān)數(shù)據(jù)的空間信息系統(tǒng)。它是現(xiàn)代地球科學(xué)、信息 學(xué)、環(huán)境科學(xué)、測繪遙感學(xué)、計(jì)算機(jī)科學(xué)、管理科學(xué)、應(yīng)用數(shù)學(xué)以及各種應(yīng)用學(xué)科有機(jī)結(jié)合 的集成產(chǎn)物。自60年代加拿大測量學(xué)家R.T.Tomlinson 首先提出地理信息系統(tǒng)這一術(shù)語以來 ,在大型機(jī)、小型機(jī)、工作站和微機(jī)平臺上,相繼出現(xiàn)了GIS的應(yīng)用平臺。如美國ESRI的產(chǎn) 品,已遍布上述四種硬件平臺。由于80年代PC技術(shù)的迅速發(fā)展,以及近幾年來PC硬件價(jià)格的 急劇下跌和其性能日益提高,使得桌面地理信息系統(tǒng)(DeskTop GIS)得到了迅速的發(fā)展。 其中在國內(nèi)用得較多的有美國ESRI公司的ArcView。?

      2. ARCVIEW介紹?

      現(xiàn)在常用的ArcView2.1以上英文版是直觀性較好的桌面地理信息系統(tǒng)。它集空間圖形、關(guān)系 數(shù)據(jù)庫、統(tǒng)計(jì)圖形、空間分析、網(wǎng)絡(luò)通訊、面向?qū)ο蟮某绦蛟O(shè)計(jì)于一體,圖形用戶界面直觀 。而且它有自己的開發(fā)工具即Avenue,用于制作特定的ArcView 應(yīng)用程序。Avenue是一種WI NDOWS環(huán)境下的面向?qū)ο蟮某绦蛟O(shè)計(jì)語言,ArcView 的系統(tǒng)功能就是由它編程實(shí)現(xiàn)的。?

      任何一個(gè)由Avenue語言開發(fā)的Windows應(yīng)用程序都有一個(gè)對應(yīng)的Project,Project由一些Doc ument和Script組成,而Document又由Document Window 和Document GUI 組成,所以Avenue 應(yīng)用程序的模型如圖1所示。圖1中Document是人機(jī)交流的唯一途徑,根據(jù)其功能又可分為 V iew, Table, Chart, Layout和 Script Editor五種,Document GUI 是對應(yīng)于某一Document 的圖形用戶界面,由 Menu bar,Button bar 和Tool bar組成,分別用來對應(yīng)不同的功能。

圖1Avenue應(yīng)用程序模型?

      我們在具體開發(fā)桌面地理信息系統(tǒng)ArcView 時(shí),發(fā)現(xiàn)現(xiàn)有的ArcVie w 系統(tǒng)功能并不能完全滿足要求,必須對ArcView 系統(tǒng)重新改造,增加新的功能。由于ArcV iew 的開發(fā)語言是Avenue,它的開發(fā)效率低,所以在實(shí)際開發(fā)中既要充分利用ArcView 自身 強(qiáng)大的地圖管理功能,又要利用高級語言(如VB5)在快速開發(fā)應(yīng)用方面的長處,兩者相互 結(jié)合,將取得良好效果。

       3. ArcView和VB5應(yīng)用程序通訊方法?

      最通用的IPC(interprocess communication,IPC)方法是DDE、OLE和對動(dòng)態(tài)聯(lián)接庫的外部 函數(shù)調(diào)用、文件訪問以及WINDOWS剪貼板。上述方法都能使不同的WINDOWS應(yīng)用程序之間彼此 通信。其中DDE方法原先是作為一種基于消息的協(xié)議在WINDOWS(3.x之前)中實(shí)現(xiàn)的,用來在 不同的WINDOWS應(yīng)用程序之間交換信息。隨著WINDOWS3.0的發(fā)布,DDE在實(shí)際的應(yīng)用程序開發(fā) 中得到大量應(yīng)用,這是通過使DDE服務(wù)能夠利用應(yīng)用程序編程接口(API)調(diào)用DDE管理庫來 完成的。ArcView是通過DDE和DLL方法實(shí)現(xiàn)與外部應(yīng)用程序通信。本文通過一個(gè)實(shí)例來詳細(xì) 介紹DDE功能的使用。在實(shí)際應(yīng)用中,ArcView既可作Clint,又可作Server,來實(shí)現(xiàn)應(yīng)用程 序之間的通訊,包括發(fā)送或接受數(shù)據(jù),執(zhí)行請求,返回分析結(jié)果。通過使用DDE方法,可以 克服ArcView本身開發(fā)語言的落后性,達(dá)到充分發(fā)揮ArcView自身強(qiáng)大的地圖管理功能,又創(chuàng) 造出符合時(shí)代特色的桌面地理信息系統(tǒng)。實(shí)踐證明,采用ArcView和VB5應(yīng)用程序通訊進(jìn)行系 統(tǒng)開發(fā)是一種有效的桌面地理信息系統(tǒng)開發(fā)方法。?

       4. 實(shí)例分析?

       在本例中,VB5 應(yīng)用程序向ArcView 發(fā)出Avenue 請求以建立新的文檔如views 和layouts, 而且應(yīng)用程序詢問ArcView 以得到當(dāng)前激活的文檔。此時(shí)VB5 應(yīng)用程序是目標(biāo),而ArcView 是源。?

       如果已安裝VB5 和ArcView,按照下面步驟建立應(yīng)用程序:?

      (1) 啟動(dòng)VB5,建立缺省窗體Form1。?
      (2) 在Form1上根據(jù)下列屬性建立控件,然后放大窗體以便整齊地排列控件。?

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'調(diào)startup 程序?

End Sub?

(5) 在FormUnload 事件中增加下列代碼:?

Sub FormUnload (Cancel As Integer)?

txtDDE.LinkMode = NONE'關(guān)閉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 文件。?

現(xiàn)在即可運(yùn)行Visual Basic應(yīng)用程序。如果ArcView 沒有運(yùn)行,應(yīng)用程序就 會(huì)激活它。從dropdown combo box 選擇一個(gè)文檔名以便在ArcView中建立一個(gè)文檔。要訪問 當(dāng)前激活的文檔就敲擊Send Request button,在文本框里將會(huì)顯示文檔名。本例所有的DDE 通訊都是通過文本框?qū)崿F(xiàn)的。在VB5中, 任何text box, picture box和label在對話中都可 作為目標(biāo),同時(shí)任何窗體可看作源。?

以上實(shí)例的運(yùn)行環(huán)境為:Visual Basic 4.0以上,ArcView2.1以上,Windows3.1以上。?

參 考 文 獻(xiàn)?

1、邊馥苓主編,《地理信息系統(tǒng)原理和方法》,北京:測繪出版社,1996 年8月。
2、郭達(dá)志、盛業(yè)華等編著,《地理信息系統(tǒng)基礎(chǔ)與應(yīng)用》,煤炭工業(yè)出版社,1997 年5月。?
3、(美國) Mike McKelvy & Ronald Martinsen 著,《Visual Basic 5開發(fā)使用手 冊》,機(jī)械工業(yè)出版社,1998年4月。


【實(shí)現(xiàn)桌面地理信息系統(tǒng)ArcView和VB5應(yīng)用程序之間的通訊】相關(guān)文章:

實(shí)現(xiàn)桌面地理信息系統(tǒng)ArcView和VB5應(yīng)用程序之間的通訊08-06

數(shù)據(jù)字典在ArcView GIS中的實(shí)現(xiàn)與應(yīng)用08-09

數(shù)據(jù)字典在ArcView GIS中的實(shí)現(xiàn)與應(yīng)用08-06

應(yīng)用程序指示圖標(biāo)的實(shí)現(xiàn)方法研究08-06

用Borland C++3.1實(shí)現(xiàn)外設(shè)與Windows應(yīng)用程序?qū)崟r(shí)通信08-06

IIC總線通訊接口器件的CPLD實(shí)現(xiàn)08-06

FoxPro for Windows 遠(yuǎn)程撥號通訊功能的設(shè)計(jì)與實(shí)現(xiàn)08-06

用CPLD實(shí)現(xiàn)DSP與PLX9054之間的連接08-06

用Visual Basic 5.0開發(fā)無線通訊數(shù)據(jù)采集應(yīng)用程序08-06