版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第三章VB環(huán)境下的MO和系統(tǒng)界面設(shè)計一、實驗?zāi)康?.了解組件GIS開發(fā)環(huán)境的構(gòu)建,相關(guān)軟件的安裝。2.利用VB進(jìn)行“石河子****信息系統(tǒng)”歡迎界面和操作界面的設(shè)計。二、實驗準(zhǔn)備完成時間:6學(xué)時預(yù)備知識:實驗的操作系統(tǒng)環(huán)境為Windows2000/XP,要基于MapObjects進(jìn)行應(yīng)用開發(fā),系統(tǒng)中需要安裝有:VisualBasic6.0及補(bǔ)丁ServicePack6;GIS組件――MapObjects2.x;圖3.1部件對話框?qū)嶒灁?shù)據(jù)圖3.1部件對話框三、實驗步驟及方法1.VB環(huán)境下運(yùn)行MO(1)裝入MapObjects控件①安裝MapObjects2.2及VisualBasic6.0;②運(yùn)行VisualBasic,從對話框中選擇NewStandardEXE,創(chuàng)建一個新的應(yīng)用程序。右擊工具箱,然后選擇彈出菜單中的“部件”(或Ctrl+T組合鍵),打開對話框(圖3.1),從控件列表中找到并勾選MapObjects2.x,此時工具箱出現(xiàn)新的控件(圖3.2);MapObjectsMapObjects地圖控件圖3.2顯示在工具箱中的MapObjects地圖控件③添加地圖控件(也可雙擊添加),在地圖控件上點右鍵,選擇彈出菜單“特性”—Add,添加數(shù)據(jù)—“green.Shp”(圖3.3),并可設(shè)置圖層的屬性(圖3.4)。如果操作正確,運(yùn)行程序后,此圖層應(yīng)該能夠顯示在窗體的Map控件上。圖3.3屬性頁對話框圖3.3屬性頁對話框圖3.4圖層屬性對話框圖3.4圖層屬性對話框2.“石河子****信息系統(tǒng)”歡迎界面的設(shè)計(1)包括系統(tǒng)名稱、開發(fā)者、進(jìn)入、退出按鍵和歡迎示意(圖3.5);(2)用戶名和密碼設(shè)置(圖3.6);(3)簡潔美觀、操作簡單;圖3.5歡迎界面圖3.5歡迎界面圖3.6用戶名、密碼設(shè)置及歡迎示意圖3.6用戶名、密碼設(shè)置及歡迎示意3.操作界面的設(shè)計和布局:簡潔美觀、操作簡單(1)界面布局:包括系統(tǒng)名稱、菜單欄、工具欄、地圖顯示區(qū)域、縮略圖區(qū)域、圖層顯示區(qū)域和可查數(shù)據(jù)顯示區(qū)域,其中地圖顯示區(qū)域占較大顯示空間(圖3.7);圖3.7系統(tǒng)操作界面圖3.7系統(tǒng)操作界面圖3.8菜單編輯器(2)菜單欄設(shè)計:圖3.8菜單編輯器【工具】-【菜單編輯器】,設(shè)計菜單欄的主菜單及下拉菜單(圖3.8)(3)彈出式菜單設(shè)計:PopupMenu語法:
object.PopupMenumenuname,flags,x,y,boldcommand
描述:object,可選。一個對象表達(dá)式,其值為“應(yīng)用于”列表中的一個對象。如果省略object,則帶有焦點的Form對象缺省為object。
Menuname
必需的。要顯示的彈出式菜單名。指定的菜單必須含有至少一個子菜單。
Flags
可選的。一個數(shù)值或常數(shù),按照下列設(shè)置中的描述,用以指定彈出式菜單的位置和行為。設(shè)置值有:
vbPopupMenuLeftAlign0(缺省值),彈出式菜單的左邊定位于x;vbPopupMenuCenterAlign4,彈出式菜單的于x居中位;vbPopupMenuRightAlign
8
彈出式菜單的右邊定位于
x。X
可選的。指定顯示彈出式菜單的
x
坐標(biāo)。如果該參數(shù)省略,則使用鼠標(biāo)的坐標(biāo)。
Y
可選的。指定顯示彈出式菜單的
y
坐標(biāo)。如果該參數(shù)省略,則使用鼠標(biāo)的坐標(biāo)。boldcommand
可選的。指定彈出式菜單中的菜單控件的名字,用以顯示其黑體正文標(biāo)題。如果該參數(shù)省略,則彈出式菜單中沒有以黑體字出現(xiàn)的控件。①先要菜單編輯器中編輯一菜單,然后將其visible屬性設(shè)為false或true②再用popupmenu調(diào)用此菜單,代碼如下:
PrivateSubForm_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)
IfButton=2Then
PopupMenu菜單名稱
End
Sub(4)工具條設(shè)計①右擊工具箱,然后選擇彈出菜單中的“部件”(或Ctrl+T組合鍵),打開對話框(圖3.1),從控件列表中找到并勾選MicrosoftWindowsCommonControl6.0,此時工具箱出現(xiàn)新的控件②點擊,在窗口新建一個ImageList1,在可編輯狀態(tài)下(選中狀態(tài))右擊—“屬性”(圖3.9),設(shè)計好工具條上各圖標(biāo)的順序,然后點擊“插入圖片”,從文件夾“圖片—圖標(biāo)”中選擇相應(yīng)圖標(biāo)依次插入,同時記住每個圖片的索引,作為工具欄中各工具按鈕功能圖像的索引;圖3.9圖3.9ImageList屬性對話框圖3.10Toolbar屬性“通用”對話框,設(shè)置圖像列表圖3.10Toolbar屬性“通用”對話框,設(shè)置圖像列表③點擊,在窗口新建一個Toolbar,在可編輯狀態(tài)下(選中狀態(tài))右擊—“屬性”(圖3.10),【通用】—【圖像列表】—【ImageList1】,將上一步已經(jīng)定義的圖像列表引入工具條;④選擇“屬性”—【按鈕】,按照ImageList1中每個圖片的索引設(shè)置“關(guān)鍵字”、“工具提示文本”等屬性(圖3.11);ImageList1中圖片的索引號ImageList1中圖片的索引號圖3.11Toolbar屬性“按鈕”對話框,按圖像列表的索引設(shè)置圖片顯示編程實現(xiàn)按鈕功能的按鈕索引號以上各步完成后,工具條上會出現(xiàn)相應(yīng)的功能圖標(biāo)。這時僅僅完成了工具條的外觀設(shè)置,其具體功能的實現(xiàn)還需要進(jìn)一步的編程實現(xiàn);⑤編寫代碼PrivateSubToolbar1_ButtonClick(ByValButtonAsButton)SelectCaseButton.IndexCase1<要執(zhí)行的代碼>Case2<要執(zhí)行的代碼>……EndSelectEndSub(5)可查數(shù)據(jù)顯示區(qū)域和樹形數(shù)據(jù)清單①點擊Frame,建立可查數(shù)據(jù)顯示區(qū)域,Caption—“數(shù)據(jù)”;②點擊,在Frame中建立可查數(shù)據(jù)的樹形表(圖3.12);圖3.12可查數(shù)據(jù)的樹形表圖3.12可查數(shù)據(jù)的樹形表樹形圖(Treeview)用于顯示按照樹形結(jié)構(gòu)進(jìn)行組織的數(shù)據(jù),這在實際當(dāng)中用途廣泛,一般用于顯示文檔標(biāo)題、索引入口、磁盤上的文件和目錄、或能被有效地分層顯示的其它種類信息。如計算機(jī)中的文件系統(tǒng)(Windows95中的資源管理器)、企業(yè)或公司的組成結(jié)構(gòu)等等。Treeview控件中一個樹形圖由節(jié)點(TreeNode)和連接線組成。TtreeNode是Treeview的基本組成單元。一個樹的節(jié)點又包含文本(Text)和數(shù)據(jù)(Data)。Text為String類,Data則為無定形指針(UntypedPointer),可以指向一個與節(jié)點相聯(lián)系的數(shù)據(jù)結(jié)構(gòu)。每一個節(jié)點下子節(jié)點形成這一節(jié)點的Items屬性,當(dāng)前節(jié)點有一個唯一的Index(TreeNode的Index屬性),用于說明子節(jié)點在Items中的位置,每一個節(jié)點下的子節(jié)點是順序編號的,第一個是0,第二個是1,依次類推。用IndexOf方法獲得子節(jié)點的順序,絕對順序(AbsoluteIndex)則是指從Treeview第一個項開始的順序值,第一個是0,如此推下去。Item屬性則根據(jù)Index的值返回當(dāng)前節(jié)點的第Index個子節(jié)點。Count則表明屬于此項的所有子節(jié)點的數(shù)量。用MoveTo方法將Item由一個位置移到另一個位置。Expanded屬性表明是否所有的子項都全部展開(包括子項的子項),為True表示全部展開。IsVisible屬性表明一個項是否在樹中能被看到,如果樹全部展開那么這個Item是肯定可以被看到。HasChildren屬性表明一個項是否有子項。GetFirstChild,GetLastChild,GetPrevChild,andGetNextChild分別返回當(dāng)前項子項的第一個、最后一個和前一個、后一個項。GetNextSiblingandGetPrevSibling則返回在同一Level下的下一個和上一個項。GetNextVisibleandGetPrevVisible則返回能看得到的下一個和上一個項。如果一個節(jié)點有Parent,則HasAsParent方法返回True.Parent為當(dāng)前項的父項。Focused屬性確定焦點是否落在此節(jié)點上,被Focus時會一個標(biāo)準(zhǔn)的方框圍住。很顯然,只有一個節(jié)點會被聚焦。Selected屬性表明一個節(jié)點是否被選中,同樣只有一個節(jié)點會被選中。DropTarget屬性表明節(jié)點在拖動操作中是源還是目標(biāo)。TreeView控件顯示Node對象的分層列表,每個Node對象均由一個標(biāo)簽和一個可選的位圖組成。TreeView一般用于顯示文檔標(biāo)題、索引入口、磁盤上的文件和目錄、或能被有效地分層顯示的其它種類信息。創(chuàng)建了TreeView控件之后,可以通過設(shè)置屬性與調(diào)用方法對各Node對象進(jìn)行操作,這些操作包括添加、刪除、對齊和其它操作??梢跃幊陶归_與折回Node對象來顯示或隱藏所有子節(jié)點。Collapse、Expand和NodeClick三個事件也提供編程功能。TreeView控件常用基本屬性介紹:appearance屬性:設(shè)置空間是否以3D效果顯示,詳細(xì)的外觀設(shè)置可以轉(zhuǎn)到此控件的“自定義”頁面進(jìn)行設(shè)置checkboxes屬性:在樹的每一項的旁邊,是否顯示一個復(fù)選框,類似checkbox控件的作用;hottracking屬性:當(dāng)鼠標(biāo)指針經(jīng)過某個條目時,這些條目是否突出顯示,類似網(wǎng)頁的超鏈接效果;labeledit屬性:決定用戶是否能編輯控件中列出的項目,此項如果不想被改變,可將屬性值設(shè)置為1;linestyle屬性:設(shè)置列出的每項Node之間的行樣式,即,如果為1,則當(dāng)前項下還有子項的時候,它的前面會顯示“+”號,如果值為2,則不顯示“+”singlesel屬性:設(shè)置在樹中選擇新的條目時,是否展開此條目并收攏前一個條目,即,設(shè)置為True時,并且當(dāng)前選中的條目有子項的時候,會把子項展開,并將原來你選中的條目收攏,這一點很實用。style屬性:設(shè)置Treeview控件的每個列表的組成方式,比如“圖片”+“文本”方式,等等,這樣你就可以把Treeview弄得更好看一些。注:0僅為文本。1圖象和文本。2+/-號和文本。3+/-號,圖象和文本。4直線和文本。5直線,圖象和文本。6直線,+/-號和文本。7(缺?。┲本€,+/-號,圖象和文本。Sorted屬性:返回或設(shè)置一值,此值確定Node對象的子節(jié)點是否按字母順序排列;返回或設(shè)置一值,此值確定TreeView控件的根層節(jié)點是否按字母順序排列。③設(shè)置各Node對象的位圖和圖標(biāo):在可編輯狀態(tài)下(選中狀態(tài))右擊—“屬性”,【通用】—【圖像列表】—【ImageList2】,將已經(jīng)定義的圖像列表ImageList2引入TreeView(圖3.13);圖3.13圖3.13TreeView控件的Style屬性設(shè)置TreeView控件使用由ImageList屬性指定的ImageList控件,來存儲顯示于Node對象的位圖和圖標(biāo)。任何時刻,TreeView控件只能使用一個ImageList。這意味著,當(dāng)TreeView控件的Style屬性被設(shè)置成顯示圖象的樣式時,TreeView控件中每一項的旁邊都有一個同樣大小的圖象(圖3.13)。④Treeview控件添加條目和子條目:通常使用ADD方法,其語法如下:Nodes.Add(relative,[relationship][,key][,text][,image][,selectedimage])注:relative可選,已存在的Node對象的索引號或鍵值,新節(jié)點與已存在的節(jié)點間的關(guān)系,可在下一個參數(shù)relationship中找到;relationship可選,指定的Node對象的相對位置,如設(shè)置值中所述;key可選的,唯一的字符串,可用于用Item方法檢索Node;text必需的,表示在Node中出現(xiàn)的字符串;image可選,在關(guān)聯(lián)的ImageList控件中的圖象的索引;selectedimage可選,在關(guān)聯(lián)的ImageList控件中的圖象的索引,在Node被選中時顯示。其中:relationship參數(shù)是通過關(guān)系節(jié)點參數(shù)與新節(jié)點連接的另一個節(jié)點;參數(shù)可能是以下情況:1-tvwlast
該節(jié)點置于所有其他的在relative中被命名的同一級別的節(jié)點的后面2-tvwNext
該節(jié)點置于在relative中被命名節(jié)點的后面3-tvwPrevius該節(jié)點置于在relative中被命名的節(jié)點的前面4-tvwChild
該節(jié)點成為在relative中被命名的節(jié)點的的子節(jié)點詳細(xì)語句可參考下列程序代碼:創(chuàng)建父節(jié)點條目:TreeView.Nodes.Add,,"Father","Father"創(chuàng)建此節(jié)點的子節(jié)點條目:TreeView.Nodes.Add"Father",tvwChild,,"Child"注意創(chuàng)建子節(jié)點的時候,relative參數(shù)為父節(jié)點的文本"Father"示例程序:'設(shè)置樹形數(shù)據(jù)清單TreeView1.Nodes.Add,,"石河子旅游管理信息系統(tǒng)","石河子旅游管理信息系統(tǒng)"TreeView1.Nodes.Add"石河子旅游管理信息系統(tǒng)",tvwChild,"專題圖","專題圖"TreeView1.Nodes.Add"專題圖",tvwChild,"行政區(qū)劃","行政區(qū)劃"TreeView1.Nodes.Add"專題圖",tvwChild,"土地利用","土地利用"TreeView1.Nodes.Add"專題圖",tvwChild,"城市綠地","城市綠地"TreeView1.Nodes.Add"專題圖",tvwChild,"旅游景點","旅游景點"TreeView1.Nodes.Add"專題圖",tvwChild,"公交線路","公交線路"TreeView1.Nodes.Add"專題圖",tvwChild,"賓館旅店","賓館旅店"TreeView1.Nodes.Add"專題圖",tvwChild,"商場超市","商場超市"TreeView1.Nodes("石河子旅游管理信息系統(tǒng)").Expanded=True'設(shè)置父節(jié)點可展開TreeView1.Nodes("專題圖").Expanded=True設(shè)置并執(zhí)行代碼后,則顯示如圖3.14圖3.14圖3.14Treeview控件添加條目和子條目⑤Treeview控件添加圖像:為節(jié)點插入圖象可參考語句:Treeview.nodes(index).image="圖片名"注:一般從imagelist控件中指定圖象⑥樹形數(shù)據(jù)清單的數(shù)據(jù)調(diào)入節(jié)點條目的單擊click事件,將觸發(fā)NodeClick事件。treeview1.selectitem可以返回選擇的節(jié)點的text值,利用這個返回值可自定義自己的事件。【例】點擊相應(yīng)的結(jié)點條目,在地圖控件中添加新的圖層。PrivateSubTreeView1_NodeClick(ByValNodeAsNode)DimgdsAsMapObjects2.GeoDataset'定義地理數(shù)據(jù)集,它代表制圖數(shù)據(jù)并可引用的圖層'定義數(shù)據(jù)連接,它是MO通向地圖數(shù)據(jù)的通道,通過屬性和方法建立與GeoDataset的聯(lián)系DimdcAsNewMapObjects2.DataConnect
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025版市政綠化施工合同三方協(xié)議(生態(tài)宜居版)2篇
- 2025版晚會攝像保密協(xié)議(全新版)3篇
- 科技與教育結(jié)合利用科技手段輔助孩子閱讀經(jīng)典
- 家庭教育指導(dǎo)服務(wù)在特殊兒童教育中的實踐
- 科技賦能家庭運(yùn)動助力孩子健康成長
- 浙江省強(qiáng)基聯(lián)盟2022-2023學(xué)年高三上學(xué)期12月聯(lián)考(一模)政治試題 含解析
- 個人借款合同延期合同范本(2024年版)版B版
- 高效能朗讀練習(xí)對小學(xué)生英語口語能力的促進(jìn)作用
- 2025版小動物領(lǐng)養(yǎng)及養(yǎng)護(hù)責(zé)任協(xié)議3篇
- 玉溪云南玉溪市公安局紅塔分局招聘警務(wù)輔助人員41人筆試歷年參考題庫附帶答案詳解
- 農(nóng)產(chǎn)品農(nóng)藥殘留檢測及風(fēng)險評估
- 農(nóng)村高中思想政治課時政教育研究的中期報告
- 20100927-宣化上人《愣嚴(yán)咒句偈疏解》(簡體全)
- 4-熔化焊與熱切割作業(yè)基礎(chǔ)知識(一)
- 單元教學(xué)評一體化設(shè)計的探索與實踐以統(tǒng)編語文教材四年級下冊第一單元為例
- 個人安全與社會責(zé)任的基本知識概述
- 醫(yī)院標(biāo)識牌方案設(shè)計2
- 移動商務(wù)內(nèi)容運(yùn)營(吳洪貴)任務(wù)二 有效傳播模式的設(shè)計
- 簡易勞務(wù)合同電子版
- 明代文學(xué)緒論
- 體育賽事的策劃、組織與實施 體育賽事利益相關(guān)者
評論
0/150
提交評論