菜單 工具欄和狀態(tài)欄_第1頁(yè)
菜單 工具欄和狀態(tài)欄_第2頁(yè)
菜單 工具欄和狀態(tài)欄_第3頁(yè)
菜單 工具欄和狀態(tài)欄_第4頁(yè)
菜單 工具欄和狀態(tài)欄_第5頁(yè)
已閱讀5頁(yè),還剩14頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第13章菜單、工具欄

和狀態(tài)欄

13.1菜單的應(yīng)用13.2工具欄和狀態(tài)欄上一頁(yè)下一頁(yè)目錄結(jié)束本節(jié)

13.1

菜單的應(yīng)用

13.1.1

下拉式菜單13.1.2動(dòng)態(tài)修改菜單狀態(tài)

13.1.3彈出式菜單

上一頁(yè)下一頁(yè)目錄結(jié)束本節(jié)

在VB中,菜單被稱為控件的對(duì)象,但VB中的菜單不是一個(gè)獨(dú)立對(duì)象,它總與窗體相關(guān)聯(lián),只有打開(kāi)窗體后才能定義該窗體使用的菜單。在實(shí)際應(yīng)用中,菜單的形式分為下拉式菜單和彈出式菜單。下拉菜單通常通過(guò)單擊菜單欄中的菜單標(biāo)題(如“文件”、“編輯”、“視圖”等)的方式打開(kāi),彈出式菜單通常通過(guò)在某一區(qū)域單擊鼠標(biāo)右鍵的方式打開(kāi)。注意:區(qū)域不同,彈出的菜單內(nèi)容一般也不同,如在Windows桌面上鼠標(biāo)指向“我的電腦”單擊右鍵和指向“回收站”單擊右鍵彈出的菜單內(nèi)容是不同的。

13.1.1

下拉式菜單

在下拉菜單系統(tǒng)中,一般有一個(gè)主菜單,稱為菜單欄。其中包括一個(gè)或多個(gè)選擇項(xiàng),稱為菜單標(biāo)題。上一頁(yè)下一頁(yè)目錄結(jié)束本節(jié)

在VB中,菜單是一個(gè)控件,在設(shè)計(jì)或運(yùn)行時(shí)可以進(jìn)行設(shè)置或調(diào)用。菜單控件中只包括一個(gè)Click事件,當(dāng)用鼠標(biāo)或鍵盤選中該菜單控件時(shí),將調(diào)用該事件。菜單控件不在VB的工具箱中,用戶需要借助VB的“菜單編輯器”完成菜單的設(shè)計(jì)。當(dāng)用戶執(zhí)行“工具”菜單中的“菜單編輯器”命令,或直接在工具欄中單擊“菜單編輯器”按鈕時(shí)均可以打開(kāi)VB的菜單編輯器。

1.屬性區(qū)

用來(lái)設(shè)置菜單控件的屬性,其主要屬性如表所示。上一頁(yè)下一頁(yè)目錄結(jié)束本節(jié)屬性說(shuō)明標(biāo)題(Caption)顯示在菜單控件中的字符,如“文件”、“編輯”等名稱(Name)在程序代碼引用菜單控件時(shí)使用的名稱索引(Index)同一般控件類似,菜單控件可以利用索引來(lái)建立數(shù)組,并以索引值來(lái)識(shí)別數(shù)組中的不同成員(類似于Command1(0)、Command1⑴…),但它不會(huì)自動(dòng)為用戶建立索引值快捷鍵(Shortcut)指定一個(gè)與菜單項(xiàng)等價(jià)的快捷鍵,如Ctrl+A、Ctrl+N等,它出現(xiàn)在菜單項(xiàng)的右邊復(fù)選(Checked)該屬性為True時(shí)在菜單項(xiàng)的前面出現(xiàn)一個(gè)“”標(biāo)記,表示該項(xiàng)目前處于活動(dòng)狀態(tài)有效(Enabled)該屬性為False時(shí),對(duì)應(yīng)的菜單項(xiàng)灰色顯示,表示當(dāng)前不可用上一頁(yè)下一頁(yè)目錄結(jié)束本節(jié)

2.編輯區(qū)

本區(qū)共包含有7個(gè)按鈕,用來(lái)對(duì)輸入的菜單項(xiàng)進(jìn)行簡(jiǎn)單的編輯。左、右按鈕:?jiǎn)螕糇蠡蛴野粹o時(shí),調(diào)整菜單項(xiàng)的升級(jí)或降級(jí)。上、下按鈕:調(diào)整菜單項(xiàng)的位置。選中編輯區(qū)中某一菜單項(xiàng)后可以通過(guò)上或下按鈕將該項(xiàng)上移或下移。下一個(gè)(Next):在菜單列表的最后產(chǎn)生一個(gè)空白項(xiàng),進(jìn)入下一菜單項(xiàng)的設(shè)計(jì)。插入(Insert):在當(dāng)前位置上面產(chǎn)生一個(gè)空白項(xiàng)。刪除:用于刪除光標(biāo)所在處的菜單項(xiàng)。

3.菜單控件列表框

實(shí)際上是一個(gè)列出了菜單項(xiàng)名稱、級(jí)別和快捷鍵的一覽表。上一頁(yè)下一頁(yè)目錄結(jié)束本節(jié)

13.1.2

動(dòng)態(tài)修改菜單狀態(tài)

用“菜單編輯器”創(chuàng)建、定義的菜單,在程序運(yùn)行過(guò)程中并非就一成不變。用戶可以根據(jù)實(shí)際運(yùn)行情況動(dòng)態(tài)地調(diào)整和控制菜單的使用,給菜單增加一些靈活性。注意:隱藏或再現(xiàn)菜單項(xiàng)并不能真正地改變菜單中菜單項(xiàng)的數(shù)量,要使菜單項(xiàng)真正地、動(dòng)態(tài)地增減(從內(nèi)存中),就應(yīng)首先建立一個(gè)菜單控件數(shù)組,并通過(guò)Load和UnLoad語(yǔ)句來(lái)實(shí)現(xiàn)。

13.1.3

彈出式菜單

彈出式菜單能以更靈活的方式為用戶提供更便利的操作,常把這種形式的菜單稱作“上下文相關(guān)”菜單、“右鍵菜單”或“快捷菜單”。上一頁(yè)下一頁(yè)目錄結(jié)束本節(jié)

為了顯示“彈出式菜單”可以使用PopupMenu方法。

【格式】

[<窗體名>.]PopupMenu<菜單名>[,Flags[,x[,y],BoldCommand]]

【說(shuō)明】

①省略<窗體名>將打開(kāi)當(dāng)前窗體的菜單。

②<菜單名>是指通過(guò)“菜單編輯器”設(shè)計(jì)出的,至少有一個(gè)選項(xiàng)的菜單名稱(Name)。

Flags參數(shù)為一些常量數(shù)值的設(shè)置,包含位置及行為兩個(gè)指定值。位置常數(shù)和行為常數(shù)如下表所示。

位置常數(shù)說(shuō)明0(默認(rèn))菜單的左上角位于x4菜單上框中央位于x8菜單右上角位于x上一頁(yè)下一頁(yè)目錄結(jié)束本節(jié)行為常數(shù)說(shuō)明0菜單命令只接收右鍵單擊2菜單命令可接收左、右鍵單擊

BoldCommand參數(shù)用于指定彈出式菜單中想用加粗效果顯示的菜單項(xiàng)名稱(只能有一個(gè)菜單項(xiàng)具有加粗效果)。

為創(chuàng)建一個(gè)不顯示在菜單欄里的菜單,可在設(shè)計(jì)時(shí)使頂級(jí)菜單項(xiàng)目為不可見(jiàn)(保證在菜單編輯器里的“Visible”復(fù)選框沒(méi)有被選上)。當(dāng)顯示一個(gè)彈出式菜單時(shí),指定頂級(jí)菜單的Visible屬性會(huì)被忽略。上一頁(yè)下一頁(yè)目錄結(jié)束本節(jié)

13.2

工具欄和狀態(tài)欄

13.2.2使用狀態(tài)欄

13.2.1使用工具欄控件上一頁(yè)下一頁(yè)目錄結(jié)束本節(jié)13.2

工具欄和狀態(tài)欄

在VB環(huán)境中用戶可以通過(guò)手工方式或使用工具欄控件(Toolbar)制作出自己需要的工具欄。由于手工方式的工具欄比較簡(jiǎn)單,所以在這我們只是具體介紹一下如何使用工具欄控件創(chuàng)建工具欄。

13.2.1

使用工具欄控件

在VB中包含了一個(gè)ActiveX控件――Toolbar(工具欄控件)使用它可以創(chuàng)建工具欄。雙擊Toolbar控件,它將自動(dòng)加入窗體并出現(xiàn)在窗體的頂端(也可用單擊后在窗體中用繪制的方法創(chuàng)建)。在Toolbar的屬性窗口中改變Align屬性可以將其設(shè)置在其他位置上,可選值如下表所示。上一頁(yè)下一頁(yè)目錄結(jié)束本節(jié)

設(shè)置值常數(shù)說(shuō)明0vbAlignNoe可以在設(shè)計(jì)時(shí)或程序中確定大小和位置。如果對(duì)象在MDI窗體上,該值被忽略(不是MDI窗體的缺省值)

1vbAlignTop

對(duì)象顯示在窗體的頂部,其寬度等于窗體的ScaleWidth屬性值(MDI窗體的缺省值)2vbAlignBotton

對(duì)象顯示在窗體的底部,其寬度等于窗體的ScaleWidth屬性設(shè)置值3vbAlignLeft

對(duì)象顯示在窗體的左邊,其寬度等于窗體的ScaleWidth屬性設(shè)置值4vbAlignRight

對(duì)象顯示在窗體的右邊,其寬度等于窗體的ScaleWidth屬性設(shè)置值

用Align屬性可以很快地在窗體的頂部或底部創(chuàng)建工具欄或狀態(tài)欄。當(dāng)用戶改變窗體的大小時(shí),Align值設(shè)置為1或2的對(duì)象,會(huì)自動(dòng)地改變大小以適合窗體的寬度。有關(guān)“屬性頁(yè)”對(duì)話框的功能說(shuō)明如下:上一頁(yè)下一頁(yè)目錄結(jié)束本節(jié)

?插入或刪除按鈕:在Button(按鈕)集合中插入或刪除元素。通過(guò)按鈕集合可以訪問(wèn)工具欄中的各個(gè)按鈕。

?索引和關(guān)鍵字:工具欄中的按鈕通過(guò)按鈕集合進(jìn)行訪問(wèn),集合中每個(gè)按鈕都有惟一的標(biāo)識(shí),索引(Index)和關(guān)鍵字(Key)就是這個(gè)標(biāo)識(shí)。索引為整型,關(guān)鍵字為字符串型,是一個(gè)可選項(xiàng)。訪問(wèn)按鈕時(shí)可以引用二者之一。

?標(biāo)題(Caption):顯示在按鈕上的文字。

?描述(Description):設(shè)置按鈕的說(shuō)明信息。當(dāng)程序運(yùn)行時(shí),雙擊工具欄對(duì)其中內(nèi)容進(jìn)行編輯時(shí)在每個(gè)按鈕旁顯示的信息。

?值(Value):說(shuō)明按鈕的狀態(tài)。0-tbrUnpressed表現(xiàn)為彈起狀態(tài),1-tbrPressed表現(xiàn)為按下?tīng)顟B(tài)。上一頁(yè)下一頁(yè)目錄結(jié)束本節(jié)

?樣式(Style):樣式屬性決定了按鈕的行為特點(diǎn),并且與按鈕相關(guān)的功能可能受到按鈕樣式的影響。如下表所示。值符號(hào)常數(shù)說(shuō)明0tbrDefault

普通按鈕(缺省值),按鈕功能不依賴于其他功能時(shí)使用1tbrCheck

開(kāi)關(guān)按鈕,當(dāng)按鈕為開(kāi)關(guān)類型時(shí)使用,具有按下、放開(kāi)兩種狀態(tài)2tbrButtonGroup編組按鈕,來(lái)實(shí)現(xiàn)按鈕的分組,同組按鈕內(nèi)只能有一個(gè)處于按下?tīng)顟B(tài)3tbrSeparator

分割按鈕,創(chuàng)建寬度為8個(gè)像素的按鈕,使不同類或不同組的按鈕分割開(kāi),在工具欄中不顯示4tbrPlaceholder

在工具欄中占據(jù)一定的位置,以便為其他控件(如組合框、列表框等)提供顯示空間,在工具欄中不顯示5thrDropdown

在工具欄上創(chuàng)建一個(gè)下拉菜單上一頁(yè)下一頁(yè)目錄結(jié)束本節(jié)

?寬度(width):當(dāng)Style屬性設(shè)為4時(shí),可設(shè)置按鈕寬度。

?圖像(Image):載入按鈕上顯示的圖片。

?工具提示文本:程序運(yùn)行時(shí),當(dāng)鼠標(biāo)指向該按鈕時(shí)顯示的說(shuō)明文字。

VB為工具欄按鈕提供了專門的圖像控件ImageList,在它的幫助下可以實(shí)現(xiàn)工具欄按鈕圖片的載入。利用ImageList控件為Toolbar添加圖片的方法是:先在Toolbar所在的窗體中添加ImageList控件及其圖像(該控件在程序運(yùn)行時(shí)是不可見(jiàn)),然后建立二者的聯(lián)系,最后從ImageList控件的圖片庫(kù)中選擇需要的圖像加載到工具欄按鈕上。在程序運(yùn)行時(shí),只需要將Toolbar的ImageList屬性設(shè)為對(duì)應(yīng)的ImageList控件的名稱,即可建立二者的關(guān)聯(lián)。下面的代碼同樣可以實(shí)現(xiàn)上述操作的功能。上一頁(yè)下一頁(yè)目錄結(jié)束本節(jié)

PrivateSubForm_Load()Toolbar1.ImageList=ImageList1EndSub

13.2.2

使用狀態(tài)欄

程序的狀態(tài)欄由StatusBar控件生成,它和菜單、工具欄一樣是Windows應(yīng)用程序的一個(gè)特征,用來(lái)顯示程序的運(yùn)行狀態(tài)及其他信息,通常用于以下幾方面:

?顯示系統(tǒng)信息,如日期、時(shí)間、軟件版本和磁盤空間等。

?顯示菜單、按鈕或其他對(duì)象的功能或使用方法。

?顯示鍵盤的狀態(tài),如顯示數(shù)字鍵、大寫(xiě)鍵、插入鍵的狀態(tài)。上一頁(yè)下一頁(yè)目錄結(jié)束本節(jié)

?顯示鼠標(biāo)或光標(biāo)的當(dāng)前位置。在添加到窗體的狀態(tài)欄上單擊右鍵,選擇彈出快捷菜單中的“屬性”命令,打開(kāi)狀態(tài)欄的“屬性頁(yè)”對(duì)話框。

下表列出了部分Style值及表達(dá)的意義。Style的值說(shuō)明SbrText-0文本和(/或)位圖,用text屬性設(shè)置文本(缺?。㏒brCaps-1顯示大小寫(xiě)控制鍵的狀態(tài)SbrNum-2顯示數(shù)字控制鍵的狀態(tài)

SbrIns-3顯示插入鍵的狀態(tài)SbrDate-4顯示當(dāng)前日期SbrTime-5顯示當(dāng)前時(shí)間上一頁(yè)下一頁(yè)目錄結(jié)束本節(jié)

另外用戶可以通過(guò)斜面(Bevel)、自動(dòng)調(diào)整大小(AutoSize)和對(duì)齊(Alignment)屬性設(shè)置每個(gè)窗格(Panel)的外觀。具體設(shè)置值如以下3個(gè)表所示。

Bevel的值說(shuō)明SbrNoBevel-0窗格不顯示斜面,這樣文本就象顯示在狀態(tài)條上一樣SbrInset-1窗格顯示凹進(jìn)樣式SbrRaised-2窗格顯示凸起樣式上一頁(yè)下一頁(yè)目錄結(jié)束本節(jié)AutoSize的值說(shuō)明Sbr

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論