VB考試教程:菜單程序設(shè)計(jì)六工具欄的設(shè)計(jì)

字號(hào):

六、工具欄的設(shè)計(jì)
    工具欄(也稱為發(fā)條或者控制欄)已經(jīng)成為許多基于Windows的應(yīng)用程序的標(biāo)準(zhǔn)功能。工具欄提供了對(duì)于應(yīng)用程序中最常用的菜單命令的快速訪問(wèn)。
    可以使用ToolBar控件來(lái)輕松的創(chuàng)建工具欄,也可以使用應(yīng)用程序向?qū)?lái)創(chuàng)建工具欄,方法更加簡(jiǎn)便。
    1、利用應(yīng)用程序向?qū)?chuàng)建工具欄
    應(yīng)用程序向?qū)荲B6.0為用戶提供的一項(xiàng)功能,通過(guò)應(yīng)用程序向?qū)в脩艨梢院芸煸O(shè)計(jì)出一個(gè)標(biāo)準(zhǔn)Windows程序的框架,其中包括窗體、菜單、工具欄、多文檔、狀態(tài)欄、對(duì)話框、滾動(dòng)條等等。設(shè)計(jì)過(guò)程是在對(duì)話中完成,設(shè)計(jì)完成后形成應(yīng)用程序的界面和框架。
    創(chuàng)建一個(gè)標(biāo)準(zhǔn)的應(yīng)用程序框架步驟如下:
     在"新建工程"對(duì)話框中選中"VB應(yīng)用程序向?qū)?后單擊[打開]命令按鈕確認(rèn)。
     按向?qū)?dǎo)航單擊一次[下一步]按鈕進(jìn)入"界面類型"對(duì)話框,選中"多文檔界面",為工程取名為"MyApplication",單擊[下一步]確認(rèn)。
     進(jìn)入"菜單"對(duì)話框,可以進(jìn)行菜單設(shè)計(jì),設(shè)計(jì)完成單擊[下一步]按鈕確認(rèn),進(jìn)入"自定義工具欄"對(duì)話框。
     在"自定義工具欄"對(duì)話框中可以自行設(shè)計(jì)工具欄,設(shè)計(jì)完成單擊[完成]確認(rèn)。
    2、使用ToolBar控件創(chuàng)建工具欄
    使用ToolBar控件創(chuàng)建工具欄也是非常簡(jiǎn)單的工作,基本的屬性設(shè)置可以通過(guò)對(duì)話框完成。給示例Mymenu設(shè)計(jì)一個(gè)具有四個(gè)工具按鈕的工具欄,分別對(duì)應(yīng)菜單中的"新建"、"打開"、"粗體"、"斜體"等四個(gè)菜單項(xiàng),并完成相應(yīng)的功能。
     首先從"部件"對(duì)話框中選中Microsoft Windows Common Controls6.0,確認(rèn)后則ToolBar控件添加到工具箱中。
     將ToolBar控件添加到窗體上。
     用鼠標(biāo)右鍵點(diǎn)擊窗體上的ToolBar對(duì)象,在彈出的快捷菜單上單擊[屬性]選項(xiàng),打開"屬性頁(yè)"對(duì)話框 ,選擇"按鈕"標(biāo)簽,單擊[插入按鈕],插入五個(gè)工具按鈕,索引分別為1,2,3,4,5。
     在屬性頁(yè)上設(shè)置工具按鈕的屬性,各工具按鈕的設(shè)計(jì)屬性值如下表:
    索引值 標(biāo)題 樣式
    1 New thrDefault
    2 Open thrDefault
    3 thrSeparator(分隔符)
    4 B thrCheck
    5 I thrCheck
    關(guān)于“樣式”的說(shuō)明:
    值 常數(shù) 按鈕 說(shuō)明
    0 tbrDefault 普通按鈕 按下按鈕后恢復(fù)原狀,如“新建”按鈕
    1 tbrCheck 開關(guān)按鈕 按下按鈕后保持按下狀態(tài),如“加粗”等按鈕
    2 tbrButtonGroup 編組按鈕 在一組按鈕中只能有一個(gè)有效,如對(duì)齊方式按鈕
    3 tbrSepatator 分隔按鈕 將左右按鈕分隔開
    4 tbrPlaceholder 占位按鈕 用來(lái)安放其它按鈕,可以設(shè)置其寬度(width)
    5 tbrdropdown 菜單按鈕 具有下拉菜單,如Word中的“字符縮放”按鈕
     用鼠標(biāo)左鍵雙擊工具欄對(duì)象,編寫Click事件響應(yīng)代碼如下:
    Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button)
     Select Case Button.Index
     Case 1
     mnuNew_Click
     Case 2
     mnuOpen_Click
     Case 4
     mnuBold_Click
     Case 5
     mnuItalic_Click
     End Select
    End Sub
    --------------------------------------------------------------------------------
    Private Sub mnuBold_Click()
     mnuBold.Checked = Not mnuBold.Checked
     Text1.FontBold = mnuBold.Checked
    End Sub
    --------------------------------------------------------------------------------
    Private Sub mnufotesize_Click(Index As Integer)
     Select Case Index
     Case 0
     Text1.FontSize = 20
     Case 1
     Text1.FontSize = 30
     End Select
    End Sub
    --------------------------------------------------------------------------------
    Private Sub mnuItalic_Click()
     mnuItalic.Checked = Not mnuItalic.Checked
     Text1.FontItalic = mnuItalic.Checked
    End Sub
    --------------------------------------------------------------------------------
    Private Sub mnuNew_Click()
     Form1.Caption = "新文件"
     Text1.Visible = True
     Text1.Text = ""
    End Sub
    --------------------------------------------------------------------------------
    Private Sub mnuOpen_Click()
     Form1.Caption = "文件"
     Text1.Visible = True
    End Sub
     保存工程運(yùn)行程序。
    [程序演示] [程序下載]
    3、利用ImageList控件在工具按鈕上顯示圖像
    在創(chuàng)建ToolBar控件之前,應(yīng)創(chuàng)建一個(gè)ImageList控件并添加你想要的圖像。
     ImageList控件
    ImageList 控件包含 ListImage 對(duì)象的集合,該集合中的每個(gè)對(duì)象都可以通過(guò)其索引或關(guān)鍵字被引用。ImageList 控件不能獨(dú)立使用,只是作為一個(gè)便于向其它控件提供圖象的資料中心。如工具欄控件(ToolBar)中的圖像就是從ImageList 控件中獲取的。