使用VB設計具有動感的命令圖標欄
發表于:2007-07-14來源:作者:點擊數:
標簽:
張嶸 我們在使用Word、Excel等 Windows 應用程序時,經常會見到在程序界面頂端有一行“立體式”圖標按鈕。當用鼠標按下某一個圖標按鈕時,程序就執行相應的操作。這一行“立體式”圖標按鈕通常就稱作命令圖標欄或工具條。命令圖標欄一般提供一些最常用的命令
張嶸
我們在使用Word、Excel等
Windows應用程序時,經常會見到在程序界面頂端有一行“立體式”圖標按鈕。當用鼠標按下某一個圖標按鈕時,程序就執行相應的操作。這一行“立體式”圖標按鈕通常就稱作命令圖標欄或工具條。命令圖標欄一般提供一些最常用的命令,供用戶快速地取用,并且它設計時采用了“立體式”按鈕,操作時會產生凹下去和凸出來的“動感”,筆者這里就談談如何用
VB來建立具有“動感”的命令圖標欄。
使命令圖標具有“動感”是依靠對命令圖標的不同狀態的圖像切換來獲得的。當鼠標按下時,圖標顯示為凹入狀態的圖像;當松開時,圖標顯示為凸出狀態的圖像。通過圖像切換就使命令圖標具有了“動感”,具體設計步驟如下:
1。首先在窗體中創建一個圖片框(Picture Box),將其Align屬性置為1,使圖片框固定在窗體上端,調節其寬度使其能安置圖像或命令按鈕。
2。在圖標框內創建若干個圖像框(Image Control),設置其Autosize=True,Picture屬性在程序運行中設置。
3。編寫程序代碼。這里假設某個命令圖標凸出狀態的圖像文件名為"z
rup.bmp",凹入狀態的圖像文件名為"zrdown.bmp"。
窗體裝入時:
Sub form-load()
Imagel.picture=Loadpicture("zrup.bmp") ’ 命令圖標凸出
End sub
鼠標按下時:
Sub Imagel-mousedown(Button As Integer Shift As Integer, X As single,Y As single)
Imagel.picture=Loadpicture("zrdown.bmp") ’ 命令圖標如下:
End sub
鼠標松開時:
Sub Imagel-mouseup(Button As Integer,Shift As Integer,X As single,Y As single) Imagel.picture=Loadpicture("zrup.bmp") ’ 命令圖標凸出
End sub
以上只能使命令圖標具備凹下去的功能,但當在按鼠標按鈕不放,并拖曳鼠標使光標移到外頭,原來圖標仍然處于凹下狀態。要使其自動凸起,就要編寫如下代碼:
Sub Imagel-mouseup(Button As Integer,Shift As Integer,X As single,Y As single)
Select Case Button
Case 1
If X$#@60;=0 or X$#@62;Imagel.Width or Y$#@60;=0 or Y$#@62;Imagel.Height then Imagel.picture=Loadpicture("zrup.bmp") ’凸出
else
Imagel.picture=Lo icture("zrdown.bmp") ’凹入
End if
End select
End sub
通過以上三步驟就可以建立具有“動感”的命令圖標,若具有多個命令圖標時,可通過創建圖像控制數組來實現。BMP是常見的一種圖像格式,也可以使用VB提供的豐富的不同狀態的命令圖標位圖文件,它在VB的子目錄\bitmaps\中。
原文轉自:http://www.anti-gravitydesign.com