走近VB.Net(六) 菜單與托盤圖標(biāo)
2024-07-10 13:01:24
供稿:網(wǎng)友
走近vb.net(六) 菜單與托盤圖標(biāo)
在vb.net中菜單使用控件而不是菜單編輯器,主菜單使用mainmenu控件,彈出菜單使用contextmenu,這里說一說彈出菜單,至于主菜單用法也沒有什么大的區(qū)別,在vb6中只要使用菜單就一定會出現(xiàn)那個看得讓人有點厭煩的標(biāo)題欄,可是又沒有什么好的辦法,只好增加一個隱藏的窗體放置菜單,這就增加了不必要的內(nèi)存開銷,而現(xiàn)在的菜單控件不再有這些問題,可以設(shè)置沒有標(biāo)題欄卻仍然使用菜單,更加靈活,更加易于使用,當(dāng)然功能也更強(qiáng)大。托盤圖標(biāo)也使用控件,真的非常容易使用。
新建一個工程,如下添加(象在vb6中一樣,點選控件然后在窗體上拖動一下)contextmenu1,trayicon1,(這些運(yùn)行時不可見的控件都出現(xiàn)在窗體下面的區(qū)域),
首先編輯菜單,白色的請單擊一下就變成藍(lán)色選中狀態(tài),當(dāng)菜單條呈藍(lán)色選中狀態(tài)時請輸入菜單的標(biāo)題,這個比vb6容易得多,我不知道是誰說vb.net很麻煩,更不知道誰發(fā)明如此偉大的理論,一定要學(xué)java,然后才能學(xué)vb.net。原文的作者只是說在vb.net還沒有發(fā)行(這是很久以前的事了)的時候可以學(xué)一些java以熟悉一下面向?qū)ο蟮姆椒āW(xué)什么本是各人自己的事情,不過說話總要有一些根椐,我想把王國榮的《vb7 的對象導(dǎo)向功能》開篇一段話放在下面:
“記得有首歌,描寫女方婉拒男方的追求而唱出「他比你先來」,但是在計算機(jī)的世界里只問誰是我最需要的,先來后到的次序并不是主要的考量。談到對象導(dǎo)向程序語言的誕生,c++ 及java的誕生比第一名的smalltalk晚了很久,但使用人口卻遠(yuǎn)遠(yuǎn)超過smalltalk,vb更別說了,只能用「大遲到者」來形容,但遲到總比沒到好。為什么vb遲到那么久,原因筆者不詳(問微軟吧),但今天他也跟其它參與對象導(dǎo)向宴會的程序語言一樣盛裝而到,要不要與他跳支舞呢?且讓我們先來檢視一番。”
原文作者認(rèn)為在vb6中其實已實現(xiàn)80%的面向?qū)ο螅皇怯行┤艘欢ㄒf只有1%的(否則如何才能顯出那個的優(yōu)越呢?)。現(xiàn)在用vb的人少了,大部分是由于有些頑固的觀念在作怪,有些人認(rèn)為有了c#,還要c++做什么?更有人說有了c#,還要vb.net做什么,我的辯論水平不是很好,我也沒有這方面的知識,不過如果你相信王國榮的這段話,相信微軟的開發(fā)組不是吃“”的,那你就學(xué)吧,學(xué)習(xí)比之成就感也有不遜的樂趣。(并不是所有的人都是為了容易才學(xué)vb的,也許想把更多的精力放到需要的地方或者是上帝的安排,vb.net正是適用這樣的人),總之你喜歡用什么就用什么,如果喜歡用vb6的話也沒有什么不對,現(xiàn)在不是還有好多人在用vb5么?(winxp都出來了,win95也沒有過時,winme想把dos砍掉,dos還活得很好,不過我是xxyj的。如果vb8.0出來,我自然是8.0不回頭了)
菜單項加上“退出程序”,“隱藏托盤圖標(biāo)”等等。單擊trayicon1的控件,在屬性欄編輯屬性,visible屬性為false,單擊contextmenu右側(cè)的向下按鍵,在下拉列表選擇你想要使用彈出菜單,這里只有一個彈出菜單contextmenu1供選擇,在icon屬性欄的對話框中選出擇一個icon圖標(biāo),最好拷貝到當(dāng)前目錄再在屬性欄輸入,單擊contextmenu,icon前的“+”號,有更多的選項可供選擇。
添加一個button1,設(shè)置text屬性為“顯示托盤圖標(biāo)”,寫代碼如下:
protected sub button1_click(byval sender as object, byval e as system.eventargs)
trayicon1.visible = true
end sub
單擊contextmenu1控件,在出現(xiàn)在窗體上的菜單上選出擇“退出程序”,雙擊(如果代碼編輯不出現(xiàn),請重新雙擊),寫代碼如下:
protected sub menuitem5_click(byval sender as object, byval e as system.eventargs)
end
end sub
單擊“隱藏托盤圖標(biāo)”,寫代碼如下:
protected sub menuitem6_click(byval sender as object, byval e as system.eventargs)
trayicon1.visible = false
end sub
運(yùn)行程序,單擊按鍵“顯示托盤圖標(biāo)”,顯示托盤圖標(biāo),右鍵單擊托盤圖標(biāo)選出菜單“隱藏托盤圖標(biāo)”單擊,隱藏托盤圖標(biāo).。當(dāng)然你需要根據(jù)你的需要擴(kuò)充更強(qiáng)大的功能,讓你的程序多姿多彩。