資源描述:
《在用戶窗體上添加狀態(tài)欄》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、VBA常用技巧代碼解析技巧1在用戶窗體上添加狀態(tài)欄在Error!Referencesourcenotfound.、Error!Referencesourcenotfound.中我們?cè)谟脩舸绑w上添加了菜單和工具欄,為了使窗體更像正規(guī)的軟件,還需要在用戶窗體的底部添加一個(gè)狀態(tài)欄,用于顯示程序的各種狀態(tài)信息。在用戶窗體上添加狀態(tài)欄使用StatusBar控件,StatusBar控件用于設(shè)計(jì)窗體狀態(tài)欄,狀態(tài)欄由一組連續(xù)的窗格(最多16個(gè))對(duì)象組合而成,用于顯示應(yīng)用程序當(dāng)前的工作狀態(tài),其位置通常在應(yīng)用程序窗體的底部
2、。在設(shè)計(jì)模式下右鍵單擊“工具箱”,在顯示的右鍵菜單中選擇“附加控件”,在顯示的對(duì)話框中選擇“MicrosoftStatusBarControl,veision6.0”控件如圖11所示,拖動(dòng)后就可以在用戶窗體上添加一個(gè)StatusBar控件。圖11選擇StatusBar控件在用戶窗體上添加了StatusBar控件后還需要添加窗格,可以在StatusBar控件的屬性頁(yè)中進(jìn)行設(shè)置和添加,在StatusBar控件的屬性窗口中選擇“自定義”按鈕,在顯示的屬性頁(yè)中設(shè)置屬性和添加窗格,如圖12所示。4VBA常用
3、技巧代碼解析圖12添加StatusBar控件的窗格也可以在代碼運(yùn)行時(shí)對(duì)其進(jìn)行屬性設(shè)置和添加窗格,雙擊用戶窗體寫(xiě)入下面的代碼:#001PrivateSubUserForm_Initialize()#002……使用API函數(shù)添加菜單代碼略,詳見(jiàn)附件。#003DimarrAsVariant#004DimiAsByte#005……使用Toolbar控件添加工具欄代碼略,詳見(jiàn)附件。#006arr=Array(0,6,5)#007WithStatusBar1#008.Width=Me.Width-10#009Fo
4、ri=1To3#010.Panels.Add(i,,"").Style=arr(i-1)#011Next#012.Panels(1).Text="準(zhǔn)備就緒!"#013.Panels(2).Width=60#014.Panels(3).Width=75#015.Panels(1).Width=Me.Width-.Panels(1).Width4VBA常用技巧代碼解析-.Panels(2).Width#016.Panels(3).Picture=LoadPicture(ThisWorkbook.Path&"
5、123.BMP")#017Fori=0To2#018.Panels(i+1).Alignment=i#019Next#020EndWith#021EndSub代碼解析:第8行代碼設(shè)置StatusBar控件的寬度比用戶窗體略小一點(diǎn)。第9行到第11行代碼在StatusBar控件中添加三個(gè)窗格并指定窗格的樣式。添加窗格需要在Panels集合對(duì)象中使用Add方法,語(yǔ)法如下:object.Panels.Add(index,key,text,style,picture)參數(shù)object是必需的,代表StatusB
6、ar對(duì)象。參數(shù)index是可選的,指定新增窗格的索引值,該索引值決定了窗格在StatusBar控件中的位置。如果省略index參數(shù)新增窗格添加到Panels集合的最后。參數(shù)key是可選的,指定新增窗格的關(guān)鍵字。參數(shù)text是可選的,指定新增窗格中顯示的文本。參數(shù)style是可選的,指定新增窗格的樣式,設(shè)置值如表格11所示。屬性值值說(shuō)明sbrText0顯示文本與圖形sbrCaps1顯示大小寫(xiě)狀態(tài)sbrNum2顯示numlock鍵狀態(tài)sbrIns3顯示Insert狀態(tài)sbrScrl4顯示Scroll鍵狀態(tài)
7、sbrtime5按系統(tǒng)格式顯示時(shí)間sbrDate6按系統(tǒng)格式顯示日期表格11Style參數(shù)值參數(shù)picture是可選的,指定新增窗格載入的圖像。第12行代碼設(shè)置第一個(gè)窗格顯示的文本。第13行到第15行代碼設(shè)置三個(gè)窗格的寬度。第16行代碼為第三個(gè)窗格加載指定的圖像。4VBA常用技巧代碼解析第17行到第19行代碼設(shè)置三個(gè)窗格中文本的對(duì)齊方式。Panels對(duì)象的Alignment屬性返回或設(shè)置窗格中文本的對(duì)齊方式,設(shè)置值如表格12所示。屬性值值說(shuō)明sbrLeft0文本左對(duì)齊sbrCenter1文本居中對(duì)齊
8、sbrRight3文本右對(duì)齊表格12Alignment屬性值在示例中使用StatusBar控件的第一個(gè)窗格在用戶窗體的文本框輸入時(shí)顯示所輸入的內(nèi)容,需要在文本框中寫(xiě)入下面的代碼。#001PrivateSubTextBox1_Change()#002StatusBar1.Panels(1).Text="正在錄入:"&TextBox1.Text#003EndSub代碼解析:文本框的Change事件過(guò)程,將文本框中輸入的內(nèi)容顯示在StatusB