狠狠操网,91中文字幕在线观看,精品久久香蕉国产线看观看亚洲,亚洲haose在线观看

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

今天小編就為大家分享一篇實(shí)現(xiàn)桌面地理信息系統(tǒng)ArcView和VB5應(yīng)用程序之間的通訊,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。
 摘要 本文簡(jiǎn)要介紹桌面地理信息系統(tǒng)的概念,通過(guò)分析 桌面地理信息系統(tǒng)arcview和vb5應(yīng)用程序之間的通訊關(guān)系,結(jié)合實(shí)例,論述了arcview 和vb 5相互通訊在開(kāi)發(fā)桌面地理信息系統(tǒng)中的應(yīng)用價(jià)值。?關(guān)鍵詞 桌面地理信息系統(tǒng)、arcview和vb5、應(yīng)用程序通訊??1. 桌面地理信息系統(tǒng)簡(jiǎn)介?地理信息系統(tǒng)是一種特定的空間信息系統(tǒng),它是采用現(xiàn)代化的方法來(lái)采集、存儲(chǔ)、分 析、管理、顯示、模擬與地理空間分布有關(guān)數(shù)據(jù)的空間信息系統(tǒng)。它是現(xiàn)代地球科學(xué)、信息 學(xué)、環(huán)境科學(xué)、測(cè)繪遙感學(xué)、計(jì)算機(jī)科學(xué)、管理科學(xué)、應(yīng)用數(shù)學(xué)以及各種應(yīng)用學(xué)科有機(jī)結(jié)合 的集成產(chǎn)物。自60年代加拿大測(cè)量學(xué)家r.t.tomlinson 首先提出地理信息系統(tǒng)這一術(shù)語(yǔ)以來(lái) ,在大型機(jī)、小型機(jī)、工作站和微機(jī)平臺(tái)上,相繼出現(xiàn)了gis的應(yīng)用平臺(tái)。如美國(guó)esri的產(chǎn) 品,已遍布上述四種硬件平臺(tái)。由于80年代pc技術(shù)的迅速發(fā)展,以及近幾年來(lái)pc硬件價(jià)格的 急劇下跌和其性能日益提高,使得桌面地理信息系統(tǒng)(desktop gis)得到了迅速的發(fā)展。 其中在國(guó)內(nèi)用得較多的有美國(guó)esri公司的arcview。?2. arcview介紹?現(xiàn)在常用的arcview2.1以上英文版是直觀性較好的桌面地理信息系統(tǒng)。它集空間圖形、關(guān)系 數(shù)據(jù)庫(kù)、統(tǒng)計(jì)圖形、空間分析、網(wǎng)絡(luò)通訊、面向?qū)ο蟮某绦蛟O(shè)計(jì)于一體,圖形用戶(hù)界面直觀 。而且它有自己的開(kāi)發(fā)工具即avenue,用于制作特定的arcview 應(yīng)用程序。avenue是一種wi ndows環(huán)境下的面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言,arcview 的系統(tǒng)功能就是由它編程實(shí)現(xiàn)的。?任何一個(gè)由avenue語(yǔ)言開(kāi)發(fā)的windows應(yīng)用程序都有一個(gè)對(duì)應(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 是對(duì)應(yīng)于某一document 的圖形用戶(hù)界面,由 menu bar,button bar 和tool bar組成,分別用來(lái)對(duì)應(yīng)不同的功能。圖1avenue應(yīng)用程序模型?我們?cè)诰唧w開(kāi)發(fā)桌面地理信息系統(tǒng)arcview 時(shí),發(fā)現(xiàn)現(xiàn)有的arcvie w 系統(tǒng)功能并不能完全滿(mǎn)足要求,必須對(duì)arcview 系統(tǒng)重新改造,增加新的功能。由于arcv iew 的開(kāi)發(fā)語(yǔ)言是avenue,它的開(kāi)發(fā)效率低,所以在實(shí)際開(kāi)發(fā)中既要充分利用arcview 自身 強(qiáng)大的地圖管理功能,又要利用高級(jí)語(yǔ)言(如vb5)在快速開(kāi)發(fā)應(yīng)用方面的長(zhǎng)處,兩者相互 結(jié)合,將取得良好效果。3. arcview和vb5應(yīng)用程序通訊方法?最通用的ipc(interprocess communication,ipc)方法是dde、ole和對(duì)動(dòng)態(tài)聯(lián)接庫(kù)的外部 函數(shù)調(diào)用、文件訪(fǎng)問(wèn)以及windows剪貼板。上述方法都能使不同的windows應(yīng)用程序之間彼此 通信。其中dde方法原先是作為一種基于消息的協(xié)議在windows(3.x之前)中實(shí)現(xiàn)的,用來(lái)在 不同的windows應(yīng)用程序之間交換信息。隨著windows3.0的發(fā)布,dde在實(shí)際的應(yīng)用程序開(kāi)發(fā) 中得到大量應(yīng)用,這是通過(guò)使dde服務(wù)能夠利用應(yīng)用程序編程接口(api)調(diào)用dde管理庫(kù)來(lái) 完成的。arcview是通過(guò)dde和dll方法實(shí)現(xiàn)與外部應(yīng)用程序通信。本文通過(guò)一個(gè)實(shí)例來(lái)詳細(xì) 介紹dde功能的使用。在實(shí)際應(yīng)用中,arcview既可作clint,又可作server,來(lái)實(shí)現(xiàn)應(yīng)用程 序之間的通訊,包括發(fā)送或接受數(shù)據(jù),執(zhí)行請(qǐng)求,返回分析結(jié)果。通過(guò)使用dde方法,可以 克服arcview本身開(kāi)發(fā)語(yǔ)言的落后性,達(dá)到充分發(fā)揮arcview自身強(qiáng)大的地圖管理功能,又創(chuàng) 造出符合時(shí)代特色的桌面地理信息系統(tǒng)。實(shí)踐證明,采用arcview和vb5應(yīng)用程序通訊進(jìn)行系 統(tǒng)開(kāi)發(fā)是一種有效的桌面地理信息系統(tǒng)開(kāi)發(fā)方法。4. 實(shí)例分析?在本例中,vb5 應(yīng)用程序向arcview 發(fā)出avenue 請(qǐng)求以建立新的文檔如views 和layouts, 而且應(yīng)用程序詢(xún)問(wèn)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的說(shuō)明部分增加下面代碼:?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"'建立對(duì)話(huà)?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 對(duì)話(huà)?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) 存儲(chǔ)vb5工程并編譯成exe 文件。?現(xiàn)在即可運(yùn)行visual basic應(yīng)用程序。如果arcview 沒(méi)有運(yùn)行,應(yīng)用程序就 會(huì)激活它。從dropdown combo box 選擇一個(gè)文檔名以便在arcview中建立一個(gè)文檔。要訪(fǎng)問(wèn) 當(dāng)前激活的文檔就敲擊send request button,在文本框里將會(huì)顯示文檔名。本例所有的dde 通訊都是通過(guò)文本框?qū)崿F(xiàn)的。在vb5中, 任何text box, picture box和label在對(duì)話(huà)中都可 作為目標(biāo),同時(shí)任何窗體可看作源。?以上實(shí)例的運(yùn)行環(huán)境為:visual basic 4.0以上,arcview2.1以上,windows3.1以上。?參考文獻(xiàn)1、邊馥苓主編,《地理信息系統(tǒng)原理和方法》,北京:測(cè)繪出版社,1996 年8月。2、郭達(dá)志、盛業(yè)華等編著,《地理信息系統(tǒng)基礎(chǔ)與應(yīng)用》,煤炭工業(yè)出版社,1997 年5月。?3、(美國(guó)) mike mckelvy & ronald martinsen 著,《visual basic 5開(kāi)發(fā)使用手 冊(cè)》,機(jī)械工業(yè)出版社,1998年4月。

版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶(hù)自發(fā)貢獻(xiàn),該文觀點(diǎn)僅代表作者本人。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請(qǐng)發(fā)送郵件至 yyfangchan@163.com (舉報(bào)時(shí)請(qǐng)帶上具體的網(wǎng)址) 舉報(bào),一經(jīng)查實(shí),本站將立刻刪除