




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第10章界面設(shè)計本章要點:
?菜單的設(shè)計
?工具欄的設(shè)計
?狀態(tài)欄的設(shè)計
?多文檔界面的設(shè)計
?對話框的設(shè)計110.1菜單的設(shè)計兩種菜單類型:下拉式菜單;彈出式菜單10.1.1下拉式菜單1.下拉式菜單的結(jié)構(gòu)子菜單菜單命令主菜單欄主菜單標(biāo)題分隔條子菜單22.菜單編輯器菜單項:看成控件,具有其屬性、事件、方法。菜單項也稱為菜單控件。設(shè)計:通過“菜單編輯器”完成。打開菜單編輯器:
?首先使窗體成為當(dāng)前窗體
?執(zhí)行“工具”菜單下的“菜單編輯器”命令
?單擊標(biāo)準(zhǔn)工具欄的“菜單編輯器”按鈕
?從窗體快捷菜單中選擇“菜單編輯器”命令菜單編輯器結(jié)構(gòu):屬性區(qū)、編輯區(qū)、菜單列表區(qū)3【例10-1】設(shè)計菜單界面,各主菜單項及其下拉菜單如下圖所示。下拉菜單中的子菜單項用于對文本框Text1設(shè)置字體、字號、文字顏色和文字效果。其中,效果子菜單下的各菜單項具有復(fù)選功能,設(shè)運(yùn)行初始時各項前面沒有√符號,與文本框的初始狀態(tài)一致。5標(biāo)題名稱索引快捷鍵說明字體(&F)AA訪問鍵Alt+F....宋體AA11Ctrl+A定義成控件數(shù)組AA1;AA1(3)用于生成分隔條....黑體AA12Ctrl+B....-AA13....隸書AA14Ctrl+C....楷體_GB2312AA15Ctrl+D字號(&S)BB訪問鍵Alt+S....14BB11定義成控件數(shù)組BB1....16BB12....18BB13....20BB14菜單編輯器設(shè)置如下表:6訪問鍵Alt+C說明
DD4....斜體
DD3....粗體DD2....下劃線
DD1....刪除線
DD效果(&E)
CC3....藍(lán)色
CC2....綠色
CC1....紅色CC顏色(&C)快捷鍵索引名稱標(biāo)題(續(xù)表)訪問鍵Alt+E7PrivateSubCC1_Click()Text1.ForeColor=vbRedEndSubPrivateSubCC2_Click()Text1.ForeColor=vbGreenEndSubPrivateSubCC3_Click()Text1.ForeColor=vbBlueEndSub(4)“效果”菜單下的各菜單項具有復(fù)選功能,每次單擊時應(yīng)切換成另一種狀態(tài),因此要判斷當(dāng)前菜單項的Checked屬性,各事件過程如下:9PrivateSubDD1_Click()IfDD1.Checked=TrueThenText1.FontStrikethru=FalseDD1.Checked=FalseElseText1.FontStrikethru=TrueDD1.Checked=TrueEndIfEndSub10PrivateSubDD2_Click()IfDD2.Checked=TrueThenText1.FontUnderline=FalseDD2.Checked=FalseElseText1.FontUnderline=TrueDD2.Checked=TrueEndIfEndSub11PrivateSubDD4_Click()IfDD4.Checked=TrueThenText1.FontItalic=FalseDD4.Checked=FalseElseText1.FontItalic=TrueDD4.Checked=TrueEndIfEndSub1310.1.2彈出式菜單彈出式菜單:上下文菜單、快捷菜單、右鍵菜單
為某對象設(shè)計彈出式菜單的步驟:(1)在菜單編輯器中設(shè)計彈出式菜單,然后將頂級菜單設(shè)置為不可見。(2)在對象的MouseDown事件過程中編寫代碼,用以下的PopupMenu方法顯示彈出式菜單:
[<窗體名>.]PopupMenu<菜單名>
,flags[,x[,y[,boldcommand]]]]
功能:在當(dāng)前鼠標(biāo)位置或指定的坐標(biāo)位置顯示彈出式菜單。
說明:見P171-17214【例10-2】在例10-1的基礎(chǔ)上設(shè)計窗體和文本框的彈出式菜單。如下圖所示。標(biāo)題
名稱
可見
文本框快捷菜單
EE
....增加1磅
EE1
....減少1磅
EE2....鎖定EE3窗體快捷菜單FF
....紅色背景FF1
....綠色背景FF2
....默認(rèn)背景FF3
(1)設(shè)置菜單編輯器:15(3)在窗體的MouseDown事件過程中編寫代碼PrivateSubForm_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)IfButton=2Then
PopupMenuFF,8Or0,,,FF3
EndIfEndSub(4)編寫實現(xiàn)菜單命令功能的代碼DimFcolorAsLongPrivateSubForm_Load()Fcolor=Form1.BackColorEndSub17PrivateSubEE1_Click()Text1.FontSize=Text1.FontSize+1EndSubPrivateSubEE2_Click()Text1.FontSize=Text1.FontSize–1EndSubPrivateSubEE3_Click()IfEE3.Caption="鎖定"ThenEE3.Caption="取消鎖定"Text1.Locked=TrueElseEE3.Caption="鎖定"
Text1.Locked=FalseEndIfEndSub18PrivateSubFF1_Click()Form1.BackColor=vbRedEndSubPrivateSubFF2_Click()Form1.BackColor=vbGreenEndSubPrivateSubFF3_Click()Form1.BackColor=FcolorEndSub19【例10-3】在例10-2的基礎(chǔ)上添加工具欄。如下圖。放置4各復(fù)選框控件,分別用于完成“效果”菜單下的四個功能。在復(fù)選框的ToolTipText屬性中分別設(shè)置功能提示:刪除線、下劃線、粗體、斜體。Check1~Check421分別在復(fù)選框控件的Click事件過程中編寫代碼:PrivateSubCheck1_Click()Text1.FontStrikethru=Check1.ValueEndSubPrivateSubCheck2_Click()Text1.FontUnderline=Check2.ValueEndSubPrivateSubCheck3_Click()Text1.FontBold=Check3.ValueEndSubPrivateSubCheck4_Click()Text1.FontItalic=Check4.ValueEndSub2210.2.2使用工具欄控件(ToolBar)制作工具欄設(shè)計步驟:(1)添加ToolBar控件、ImageList控件。工程部件選擇“MicrosoftWindowsCommonControls6.0”
常用ImageList控件提供工具欄所需的圖片。(2)在窗體上畫ToolBar控件、ImageList控件(3)設(shè)置ImageList控件。(4)設(shè)置ToolBar控件的“屬性頁”。定義按鈕對象集。引用索引號為n的按鈕:Buttons(n)
例:設(shè)置Toolbar1中索引號為3的按鈕的標(biāo)題。
Toolbar1.Buttons(3).Caption="顯示"(5)編寫代碼:在ButtonClick事件過程或ButtonMenuClick事件過程中編寫。2310.4多文檔界面設(shè)計單文檔界面(SDI):一次只能打開一個文檔如Notepad(記事本)多文檔界面(MDI):一次可以打開多個文檔如ExcelMDI主要特點:(1)子窗體隨父窗體最小化或關(guān)閉而最小化或關(guān)閉。(2)子窗體不能移出父窗體。(3)當(dāng)子窗體最大化時,標(biāo)題與父窗體的標(biāo)題重疊。(4)
父窗體和子窗體可以有各自的菜單,加載子窗體后,父窗體的菜單將被子窗體的菜單取代。25創(chuàng)建多文檔界面步驟:(1)添加一個MDI父窗體。工程添加MDI窗體選擇“MDI窗體”(2)建立其它子窗體。建立普通窗體,設(shè)置其MDIChild屬性為True(3)設(shè)置啟動對象為MDIForm對象。工程工程屬性選擇“啟動對象”為MDIForm(4)要在MDIForm對象中顯示各子窗體,可以使用Show方法。使用Arrange方法可以重排MDI子窗體或圖標(biāo)。
格式:<MDIForm對象名>.Arrange<排列方式><排列方式>:vbCascade或0—層疊非最小化的子窗體vbTileHorizontal或1—水平平鋪非最小化子窗體vbTileVertical或2—垂直平鋪非最小化子窗體vbArrangeIcons或3—重排最小化子窗體的圖標(biāo)26例如:Form2.ShowvbModalForm2.ShowvbModeless為確保對話框可以隨其父窗體的最小化而最小化,隨其父窗體的關(guān)閉而關(guān)閉,需要在Show方法中定義父窗體。例如:PrivateSubCommand1_Click()Form2.ShowvbModeless,Form1EndSub(6)編寫從對話框退出的代碼例如:UnloadForm2或:Form2.Hide29【例10-4】設(shè)計對話框Form2如下圖所示。當(dāng)輸入某文件所在的路徑及名稱后,單擊“確定”按鈕按所選擇的運(yùn)行方式運(yùn)行該文件,單擊“取消”按鈕取消本次操作,返回窗體Form1中。如果輸入文件名錯誤,將給出警告并返回該對話框。Text1Option1Option2Option3Command1Command230對話框Form2代碼如下:PrivateSubCommand1_Click()
OnErrorGoToErrorHandler
FName=Trim(Text1.Text)
IfOption1.Value=TrueThena=Shell(FName,1)IfOption2.Value=TrueThena=Shell(FName,3)
IfOption3.Value=TrueThena=Shell(FName,2)
ExitSubErrorHandler:MsgBox"不能運(yùn)行該程序",,"注意"
ResumeNext'從產(chǎn)生錯誤的語句之后開始運(yùn)行EndSubPrivateSubCommand2_Click()UnloadMeEndSub3110.5.2通用對話框使用通用對話框控件(CommonDialog)可以創(chuàng)建多種標(biāo)準(zhǔn)對話框。設(shè)計步驟:(1)添加:工程部件選擇“MicrosoftCommonDialogControls6.0”(2)在窗體的任意位置畫通用對話框控件。(3)設(shè)置通用對話框控件的“屬性頁”。(4)在代碼中使用以下方法打開對話框。ShowOpen:顯示“打開文件”對話框ShowSave:顯示“文件存儲”對話框ShowColor:顯示“顏色”對話框ShowFont:顯示“字體”對話框
ShowPrinter:顯示“打印”對話框ShowHelp:顯示“幫助”對話框321.文件對話框?qū)傩皂?DialogTitle
InitDirFilterFlagsDefaultExtMaxFilterIndexCancelError33【例10-5】使用打開文件對話框,在運(yùn)行時打開一幅圖像。在窗體Form1上放置一個圖像控件、一個通用對話框控件、一個命令按鈕,界面如圖所示。Image1CommonDialog1Command134其中,CommonDialog1的屬性頁設(shè)置如下:Allfiles|*.*|BmpFiles|*.bmp|IconFiles|*.ico指文件名35“裝入圖像”按鈕代碼如下:PrivateSubCommand1_Click()CommonDialog1.ShowOpenImage1.Picture=_LoadPicture(CommonDialog1.)EndSub在對話框中按取消按鈕的處理:(1)不處理:不設(shè)置“取消引發(fā)錯誤”36(2)處理:設(shè)置“取消引發(fā)錯誤”,編寫代碼如下:PrivateSubCommand1_Click()
OnErrorGoToErrHandlerCommonDialog1.ShowOpenImage1.Picture=_LoadPicture(CommonDialog1.)ExitSub
ErrHandler:ExitSubEndSub37顏色:Color標(biāo)志:FlagsFontSize
Min
Max
FontName38【例10-6】設(shè)計如圖所示的界面,運(yùn)行時單擊“背景色”按鈕打開顏色對話框,在對話框中選擇的顏色用于設(shè)置文本框的背景顏色,單擊“字體”按鈕打開字體對話框,在對話框中選擇字體、效果及顏色,用于設(shè)置文本框文字的字體、效果及顏色。CommonDialog1Text1設(shè)置Flag:257、258、25939“背景色”按鈕Command1的Click事件過程如下:PrivateSubCommand1_Click()CommonDialog1.ShowColorText1.BackColor=CommonDialog1.ColorEndSub40“字體”按鈕Command2的Click事件過程如下:PrivateSubCommand2_Click()CommonDialog1.ShowFontText1.Font=CommonDial
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 標(biāo)準(zhǔn)技術(shù)服務(wù)合同書
- 生產(chǎn)工藝承包經(jīng)營合同
- 股權(quán)轉(zhuǎn)讓協(xié)議書投資協(xié)議書
- 戶外活動合作協(xié)議新
- 美妝店鋪委托經(jīng)營合同(3篇)
- 住宅房買賣合同書
- 墊資工程協(xié)議合同共
- 教育行業(yè)課外活動安全免責(zé)協(xié)議
- 三農(nóng)產(chǎn)品網(wǎng)絡(luò)營銷實戰(zhàn)方案
- 電子通信基站裝飾工程施工合同
- 基于單片機(jī)實現(xiàn)滯回比較器算法
- 4s店服務(wù)總監(jiān)崗位職責(zé)4篇
- PHWYT 一體式風(fēng)速風(fēng)向傳感器 說明書
- 湯臣一品推廣策略
- 低鉀血癥最新版本最新課件
- 2023年陜西延長石油礦業(yè)有限責(zé)任公司招聘筆試題庫及答案解析
- YY/T 1792-2021熒光免疫層析分析儀
- GB/T 39235-2020豬營養(yǎng)需要量
- GB/T 32691-2016汽車空調(diào)電磁離合器
- 染廠公司簡介(4個范本)
- PPT用中國地圖(可編輯)
評論
0/150
提交評論