版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第二十講 菜 單Visual Basic 程序設(shè)計教程內(nèi)蒙古科技大學(xué)工程訓(xùn)練中心韓 艷第1頁,共32頁。9.1 菜單 菜單的種類:下拉式菜單、彈出式菜單 9.1 下拉式菜單 1、下拉式菜單結(jié)構(gòu) 結(jié)構(gòu) : 主菜單欄、各級子菜單; 子菜單又分為:菜單命令或選項、子菜單標(biāo)題和分隔條; 菜單命令或選項:可以直接執(zhí)行; 子菜單標(biāo)題:可以再拉出一級菜單; 分隔條:用于對于子菜單項進(jìn)行分組; 2、設(shè)計下拉式菜單 進(jìn)入菜單編輯器: 執(zhí)行”工具“菜單的”菜單編輯器“按鈕; 直接執(zhí)行熱鍵(快捷鍵) Ctrl+E; 單擊”工具欄“上的”菜單編輯器”; 在要建立菜單的窗體上單擊鼠標(biāo)右鍵,打開快捷菜單,執(zhí)行“菜單編 輯
2、器”; 工程訓(xùn)練中心第2頁,共32頁。9.1 菜單 9.1 下拉式菜單 “菜單編輯器”屬性區(qū): 屬性名屬性值說明標(biāo)題(Caption)字符型數(shù)據(jù)指定菜單項或菜單命令顯示的字符串名稱(Name)字符型數(shù)據(jù)指定菜單控件的名稱索引整型數(shù)據(jù)指定一個數(shù)字來確定菜單項或菜單命令在菜單控件數(shù)組中的序號,該序號與各菜單控件的位置無關(guān)快捷鍵字符型數(shù)據(jù)指定菜單命令的快捷鍵復(fù)選邏輯型數(shù)據(jù)指定是否允許在菜單項的左邊設(shè)置復(fù)選標(biāo)記有效邏輯型數(shù)據(jù)指定該菜單項是否可操作可見邏輯型數(shù)據(jù)設(shè)置是否將該菜單項顯示在菜單上顯示窗口列表邏輯型數(shù)據(jù)在多重文檔(MDI)程序中指定該控件是否包含一個打開MDI子窗體列表工程訓(xùn)練中心第3頁,共3
3、2頁。9.1 菜單 9.1 下拉式菜單 “菜單編輯器”屬性區(qū): 說明: “名稱”屬性是菜單項的必要屬性,必須給定; 在輸入菜單標(biāo)題時在某個字母前輸入一個&符號。該字母就成了熱 鍵,在窗體上顯示時該字母帶有下劃線,操作時用Alt+該字母就激活 菜單或執(zhí)行該菜單命令; 分隔符:在菜單的標(biāo)題欄輸入“”號,則菜單顯示時形成一個分隔符工程訓(xùn)練中心第4頁,共32頁。9.1 菜單 9.1 下拉式菜單 “菜單編輯器”編輯區(qū): “”:每單擊一次該按鈕,產(chǎn)生”.”,稱為內(nèi)縮號,用來確定菜單項的層 次,每單擊一次,菜單項下移一個等級; “”:把選定的菜單上移一個等級; “:把選定的菜單在同級菜單內(nèi)向上(前)移動一個
4、位置; “”:把選定的菜單在同級菜單內(nèi)向下(后)移動一個位置; “下一個”:開始一個新的菜單項(命令); “插入”:在當(dāng)前的菜單項前插入一個新的菜單項; “刪除”:刪除當(dāng)前的菜單項 “菜單編輯器顯示區(qū)”: 該區(qū)域顯示了所創(chuàng)建的菜單,并通過“.”指明了它們的層次。 工程訓(xùn)練中心第5頁,共32頁。9.1 菜單 9.1 下拉式菜單 例9-1利用菜單命令,控制標(biāo)簽的顯示和隱藏 Private Sub m_11_Click() Label1.Visible = TrueEnd SubPrivate Sub m_menu1_Click() Label1.Visible = FalseEnd Sub 菜單中
5、每一個菜單命令都是一個控件,設(shè)計時只需在“菜單編輯器”來設(shè)置相關(guān)屬性即可,當(dāng)然執(zhí)行某一菜單命令的處理過程需編程來完成。沒有子菜單的菜單命令均能響應(yīng)click事件,它是菜單控件的唯一事件。工程訓(xùn)練中心第6頁,共32頁。9.1 菜單 9.1 下拉式菜單 例9-2設(shè)計一個應(yīng)用程序,通過菜單完成兩個整數(shù)的加減運算。Private Sub add_Click() Label1.Caption = + Label3.Caption = Val(Text1.Text) + Val(Text2.Text)End SubPrivate Sub sub_Click() Label1.Caption = - Lab
6、el3.Caption = Val(Text1.Text) + Val(Text2.Text)End S工程訓(xùn)練中心第7頁,共32頁。9.1 菜單 9.1 下拉式菜單 動態(tài)菜單的設(shè)計 動態(tài)菜單是指菜單項或菜單命令在程序的運行過程中有增有減; 可設(shè)計一個菜單控件數(shù)組,即同一菜單上享有相同的名稱和事件過程的 一組菜單項(命令)的集合,通過菜單控件數(shù)組的下標(biāo)來訪問該數(shù)組中的 某一個具體菜單項或菜單命令。 使用load方法在菜單控件數(shù)組中增加一個新的菜單項(命令),也可以 用Unload方法從菜單控件數(shù)組中刪除一個菜單項。 工程訓(xùn)練中心第8頁,共32頁。9.1 菜單 9.1.1 下拉式菜單 動態(tài)菜單的
7、設(shè)計 例9-3才菜單中動態(tài)添加“乘法”和“除法”操作。 解題思路:當(dāng)單擊窗體時,調(diào)用load方法,利用控件數(shù)組appendcal為菜單 增加兩個子菜單;當(dāng)雙擊窗體時,調(diào)用unload方法將新增的兩個子菜單刪除。 Appendcal_click事件是新增的兩個菜單的共用事件,當(dāng)作乘法操作時,參 數(shù)index的值為1,作除法時為2。 工程訓(xùn)練中心第9頁,共32頁。9.1 菜單 9.1.2 彈出式菜單 彈出式菜單獨立于菜單欄,直接顯示在窗體上; 彈出式菜單通常是單擊鼠標(biāo)右鍵打開,又稱為”右鍵菜單“或”快捷菜單“; 創(chuàng)建方法: 在”菜單編輯器“中,對最高一級菜單的”可見“屬性設(shè)置為”False“,然后
8、 調(diào)用PopupMenu方法將其作為快捷菜單顯示出來。 格式: 對象名.PopMenu 菜單名,flags,X,Y,DefaultMenu 其中: 對象名:可選項,默認(rèn)為當(dāng)前窗體; 菜單名:必選項,要顯示的彈出式菜單名,是在菜單編輯器中定義的 主菜單標(biāo)題,該主菜單標(biāo)題至少含有一個子菜單; flags:可選項,是一個數(shù)值或符號常量,用于指定彈出式菜單的位置 和行為;工程訓(xùn)練中心第10頁,共32頁。9.1 菜單值位置常量說明0vbPopMenuLeftAlign缺省值,彈出式菜單的左上角位于坐標(biāo)(x,y)處4vbPopMenuCenterAlign彈出式菜單的上邊框的中央位于坐標(biāo)(x,y)處8vb
9、PopMenuCenterRight彈出式菜單的右上角位于坐標(biāo)(x,y)處 9.1.2 彈出式菜單 Flags取值表: Flags參數(shù)由每組值選取一個數(shù)字相加而成。值位置常量說明0vbPopMenuLeftButton缺省值,彈出式菜單中的命令只接受鼠標(biāo)左鍵單擊2vbPopMenuRightButton缺省值,彈出式菜單中的命令可接受鼠標(biāo)左、右鍵單擊指定菜單行為:指定菜單位置:工程訓(xùn)練中心第11頁,共32頁。9.1 菜單 9.1.2 彈出式菜單 x,y:指定顯示彈出式菜單的x坐標(biāo)和y坐標(biāo),省略時為鼠標(biāo)的當(dāng)前坐標(biāo); DefaultMenu:指定彈出式菜單中要顯示為黑體的菜單控件的名稱,省略 時,
10、則彈出式菜單沒有以黑體字出現(xiàn)的菜單項; 在顯示彈出式菜單時,一般把PopupMenu方法放在MouseDown事件中,該事件響應(yīng)所有的鼠標(biāo)單擊事件。 通過鼠標(biāo)右鍵打開彈出式菜單,可以用Button參數(shù)來判斷,左鍵的Button參數(shù)為1,右鍵的Button參數(shù)為2。 Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = 2 Then PopupMenu 菜單項名 End Sub 工程訓(xùn)練中心第12頁,共32頁。9.1 菜單 9.1.2 彈出式菜單例
11、9-4在上例的基礎(chǔ)上將”運算“菜單作為彈出式菜單顯示。 工程訓(xùn)練中心第13頁,共32頁。9.1 菜單 9.1.2 彈出式菜單例9-5設(shè)計一個彈出式菜單工程訓(xùn)練中心第14頁,共32頁。9.2 對話框 VB系統(tǒng)提供的對話框: 預(yù)定義對話框:即由InputBox或MsgBox函數(shù)創(chuàng)建的對話框; 通用對話框:用CommonDialog控件創(chuàng)建,如“打開對話框”、“字體”對話 框等 ; 用戶自定義對話框:用戶根據(jù)自己的需要在窗體上添加各種控件來構(gòu)成 自己需要的對話框; 9.2.1 通用對話框 VB系統(tǒng)提供的基于Windows的通用對話框: “打開”對話框(Open) “另存為”對話框(Save) “顏色
12、”對話框(Color) “字體”對話框(Font) “打印機(jī)”對話框(Printer) “幫助”對話框(Help)工程訓(xùn)練中心第15頁,共32頁。9.2 對話框9.2.1 通用對話框 1、添加通用對話框控件 方法:系統(tǒng)菜單“工程”“部件”, 選擇“Microsoft Common Dialog Control 6.0” 通用對話框控件注:通用對話框在程序運行后不可見,故在設(shè)計時可將其放置在窗體的任何 地方工程訓(xùn)練中心第16頁,共32頁。9.2 對話框9.2.1 通用對話框 2、通用對話框的屬性 在窗體上添加通用對話框后,可在屬性窗口中單擊“自定義”的按鈕或者 用鼠標(biāo)右鍵單擊對話框控件,打開“屬
13、性”選項。 3、通用對話框的使用 通過設(shè)置不同的Action屬性值(只能在程序中設(shè)置)或調(diào)用不同的方法 來決定對話框的類型顯示的對話框方法Action屬性值“打開”對話框ShowOpen1“另存為”對話框ShowSave2“顏色”對話框ShowColor3“字體”對話框ShowFont4“打印機(jī)”對話框ShowPrinter5“幫助”對話框ShowH工程訓(xùn)練中心第17頁,共32頁。9.2 對話框9.2.1 通用對話框 (1)“打開”對話框 程序運行后,將Action屬性值設(shè)置為1或調(diào)用ShowOpen方法,即可彈出 “打開”對話框。 在“打開”對話框中,可指定要打開文件的路徑、文件名和文件類型
14、。 DialogTitleFileNameInitDirFilterFlagsDefaultExtMaxFile SizeFilterIndexCancelE工程訓(xùn)練中心第18頁,共32頁。9.2 對話框9.2.1 通用對話框 “打開”對話框?qū)傩灾担?“對話框標(biāo)題”DialogTitle 用途:用于設(shè)置對話框的標(biāo)題; “文件名稱”FileName 用途:用于設(shè)置打開對話框顯示的初始文件名。若在對話框中選擇了 一個文件并單擊“打開”或“保存”按鈕,則選擇的文件(包含路徑) 即為FileName屬性的值; “初始化路徑”InitDir 用途:用于指定打開對話框的初始路徑,若沒有指定該屬性,則使用
15、當(dāng)前路徑; 工程訓(xùn)練中心第19頁,共32頁。9.2 對話框9.2.1 通用對話框 “打開”對話框?qū)傩灾担?“過濾器”Filter 用途:用于指定在對話框的文件類型列表框中所要顯示的文件類型。 如:選擇過濾器為*.txt,表示顯示所有的文本文件。 通常給每個過濾器一個描述,使用管道符號”|”將過濾器描述和過濾 器隔開;如:下列代碼用于設(shè)置一個過濾器,其允許打開“文本文件 (*.txt)、或含有位圖和JPG圖形的文件(*.bmp;*.jpg): 文本文件(*.txt) | *.txt | 圖形文件(*.bmp;*.jpg) | *.bmp;*.jpg 描述過濾器描述過濾器“過濾器索引”Filter
16、Index 用途:當(dāng)為對話框指定了一個以上的過濾器時,用于確定哪個過濾器作為缺省過濾器。第一個過濾器索引值為1,第二個為2,依此類推。工程訓(xùn)練中心第20頁,共32頁。9.2 對話框9.2.1 通用對話框 “打開”對話框?qū)傩灾担?“標(biāo)志”Flags 用途:用于確定對話框的一些特性,如是否允許同時選擇多個文件等。 “缺省擴(kuò)展名” DefaultExt 用途:當(dāng)對話框用于保存文件時,如果文件沒有指定擴(kuò)展名,則使用該 屬性指定的缺省擴(kuò)展名,如:*.txt,*.doc等 “文件最大長度”MaxFile Size 用途:用于指定文件的最大長度,單位為字節(jié); “取消引發(fā)錯誤” CancelError 用途:
17、用于確定運行時在對話框中按”取消“時是否出錯。選擇該項,相 當(dāng)于CancelError設(shè)為true,按”取消“出錯,否則,不出錯。 工程訓(xùn)練中心第21頁,共32頁。9.2 對話框9.2.1 通用對話框 例9-6在窗體上畫一個名稱為command1的命令按鈕,標(biāo)題為”打開文件“,再畫一個名稱為CD1的通用對話框。程序運行后,若單擊命令按鈕,則彈出打開文件對話框,并按下列要求設(shè)置屬性和代碼: 設(shè)置適當(dāng)屬性,使對話框的標(biāo)題為”打開文件“,初始目錄為c盤根目錄; 設(shè)置適當(dāng)屬性,使對話框的”文件類型“下拉式組合框中有二行:”Word文 檔“、”所有文件“,默認(rèn)的是”所有文件“; 編寫命令按鈕的事件過程,
18、使得單擊按鈕可以彈出”打開文件“對話框; 思路: 首先,條件、是在對話框?qū)傩源翱谏吓渲脜?shù),可在對話框?qū)傩源翱趦?nèi)填寫”對話框標(biāo)題“、”初始化路徑“的相應(yīng)內(nèi)容; 其次,過濾器的內(nèi)容為:Word文檔|*.doc|所有文件|*.*;且根據(jù)題意,過濾器索引值設(shè)為2; 另,條件是指編寫代碼,調(diào)用通用對話框,可采用如下程序代碼: cd1.action=1 或者 cd1.showopen 均可工程訓(xùn)練中心第22頁,共32頁。9.2 對話框9.2.1 通用對話框 2、”另存為“對話框 調(diào)用方法:在程序運行后,Action2或調(diào)用ShowSave方法; 屬性:與”打開“對話框基本一致; ”另存為“對話框可以指定
19、文件要保存的路徑、文件名和文件類型; 例9-8編寫一個程序,用”另存為“對話框?qū)⒁粋€文本框的內(nèi)容寫入一個文本文件里。 解題思路:首先在窗體上畫一個文本框、命令按鈕和通用對話框控件;其中對話框的屬性可在其屬性窗口中配置,也可在程序中用命令配置; 配置對話框?qū)傩?cd1.Filter = 文本文件|*.txt|所有文件|*.* 對話框的過濾器 cd1.FileName = *.txt 對話框的文件名 cd1.DefaultExt = txt 對話框的默認(rèn)文件擴(kuò)展名 cd1.Action = 1 調(diào)用另存為對話框 將文本框內(nèi)的內(nèi)容寫入文本文件 Open cd1.FileName For Output
20、 As #1 Print #1, Text1.Text Close #工程訓(xùn)練中心第23頁,共32頁。9.2 對話框9.2.1 通用對話框 3、”顏色“對話框 調(diào)用方法:在程序運行后,Action3或調(diào)用ShowColor方法; 屬性:除對話框的基本屬性外還有”color“與“flags”兩個屬性值; 常數(shù)值描述cdlCCFullOpen&H2顯示全部對話框,包括定義和自定義顏色部分cdlCCShowHelpButton&H8使對話框顯示幫助按鈕cdlCCPreventFullOpen&H4使定義自定義顏色命令按鈕無效并防止定義自定義顏色cdlCCRGBInit&H1為對話框設(shè)置初始顏色工程訓(xùn)
21、練中心第24頁,共32頁。9.2 對話框9.2.1 通用對話框 3、”顏色“對話框 例9-9編寫一個應(yīng)用程序,用”顏色“對話框設(shè)置一個文本框的背景顏色。 解題思路:首先在窗體上畫一個文本框、命令按鈕和通用對話框控件; 對于文本框的背景色(backcolor)的設(shè)置可采用如下命令: Text1.Backcolor=CommonDialog1.Color 例9-9_1”顏色“對話框flags的屬性實例 解題思路:首先在窗體上畫一個文本框、命令按鈕和通用對話框控件; 設(shè)置顏色對話框的flags的屬性值為”cdlCCFullOpen”工程訓(xùn)練中心第25頁,共32頁。9.2 對話框9.2.1 通用對話框
22、 4、”字體“對話框 調(diào)用方法:Action4 或者調(diào)用showfont方法; 屬性值: 屬性名屬性值說明FlagscdlCFEffects(&H100)在字體對話框中顯示刪除線和下劃線復(fù)選框以及顏色組合框該屬性必須在激活字體對話框之前進(jìn)行設(shè)置cdlFSscreenFonts(&H1)顯示屏幕字體cdlFPrintFonts(&H2)顯示打印機(jī)字體cdlCFBoth(&H3)顯示打印機(jī)字體和屏幕字體FontName字符型數(shù)據(jù)用戶所選的字體名稱FontSize整型數(shù)據(jù)用戶所選的字體大小FontBold邏輯性數(shù)據(jù)用戶所選的字體是否加粗FontItalic邏輯性數(shù)據(jù)用戶所選的字體是否斜體FontUn
23、derLine邏輯性數(shù)據(jù)用戶所選的字體是否加下劃線FontStrikethra邏輯性數(shù)據(jù)用戶所選的字體是否加刪除線工程訓(xùn)練中心第26頁,共32頁。9.2 對話框9.2.1 通用對話框 4、”字體“對話框 例9-10編寫一個程序,用“字體”對話框設(shè)置一個文本框的字體。 解題思路:在程序中,首先要設(shè)置對話框的flags屬性,然后設(shè)置文本框的字體屬性,如:fontname、fontsize等相應(yīng)屬性,如: Text1.Fontname=CommonDialog1.Fontname等; cd1.Flags = cdlCFBoth Or cdlCFEffects 安裝字體 cd1.ShowFont 根據(jù)
24、用戶在字體對話框中的選擇來設(shè)置文本框字體 Text1.FontName = cd1.FontName Text1.FontBold = cd1.FontBold Text1.FontSize = cd1.FontSize Text1.FontItalic = cd1.FontItalic Text1.FontStrikethru = cd1.FontStrikethru Text1.FontUnderline = cd1.FontUnderline Text1.ForeColor = cd1.C工程訓(xùn)練中心第27頁,共32頁。9.2 對話框9.2.1 通用對話框 5、”打印機(jī)“對話框 調(diào)用方法
25、:Action5 或者調(diào)用showprinter方法; 屬性值: 屬性名說明Copies指定打印份數(shù)FromPage指定打印起始頁號ToPage指定打印終止頁號例9-11 編寫一個程序,用“打印機(jī)”對話框打印一個文本框內(nèi)容。解題思路:打印份數(shù)要由FORNEXT循環(huán)程序加以控制。 工程訓(xùn)練中心第28頁,共32頁。9.2 對話框9.2.1 通用對話框 6、”幫助“對話框 調(diào)用方法:Action6 或者調(diào)用showhelp方法; 屬性值: 屬性名說明HelpCommand用于返回設(shè)置所需在線幫助類型HelpFile用于指定Help的路徑及文件名HelpKey用于指定要顯示的幫助內(nèi)容的關(guān)鍵字注:幫助對話框不是用來制作應(yīng)用程序的幫助文件的 ,它僅僅是
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 家私廠職業(yè)衛(wèi)生制度
- 棄土場環(huán)境衛(wèi)生制度
- 衛(wèi)生院轉(zhuǎn)診服務(wù)制度
- 客運站公廁衛(wèi)生管理制度
- 衛(wèi)生許可證所需管理制度
- 美容業(yè)每日衛(wèi)生管理制度
- 衛(wèi)生殺蟲藥規(guī)范制度
- 衛(wèi)生院宣傳三項制度
- 修理廠個人衛(wèi)生規(guī)章制度
- 衛(wèi)生院藥品財務(wù)管理制度
- 醫(yī)保智能審核系統(tǒng)的構(gòu)建與實踐
- 2025年司法考試真題試卷+參考答案
- DB61∕T 1434-2021 崩塌、滑坡、泥石流專業(yè)監(jiān)測規(guī)范
- 2025年《治安管理處罰法》知識考試題及答案
- 電力設(shè)計部門管理制度
- 飲片物料管理培訓(xùn)
- 2025年及未來5年中國正辛硫醇行業(yè)市場全景監(jiān)測及投資戰(zhàn)略咨詢報告
- DB4403-T 377-2023 民宿消防安全管理規(guī)范
- 危險化學(xué)品運輸安全手冊
- GB/T 46146-2025家具五金件鉸鏈及其部件的強(qiáng)度和耐久性繞垂直軸轉(zhuǎn)動的鉸鏈
- 粵教花城版音樂 鋼琴獨奏《雪橇》聽評課記錄
評論
0/150
提交評論