国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
用戶窗體
用戶窗體
-----------------------

  用戶窗體(UserForm對(duì)象)是VBA的另一類對(duì)象。它表現(xiàn)出來是一個(gè)窗口或?qū)υ捒颍缜懊嫖覀冋f的MsgBox與InputBox語句彈出來的都屬于窗體。使用窗體可以提供一個(gè)形象的用戶界面。同我們可以在工作表(WorkSheet)上在添加不同的控件一樣,在這個(gè)界面上,我們可以添加命令按鈕、標(biāo)簽、圖像、列表框等控件,用戶可以通過修改控件的屬性、編寫不同的事件過程在程序運(yùn)行過程中與程序進(jìn)行交互。
  
  1、添加窗體
  如果你還沒有忘記怎么插入模塊?那請(qǐng)用同樣的方法插入一個(gè)用戶窗體。
  Alt+F11快捷鍵打開VBE編輯窗口,在工程資源管理器窗口中單擊右鍵,選擇“插入——用戶窗體”命令。

  

 


  Excel為用戶窗體取名,同為工作表、按鈕等取名一樣,采用“老大,老二,老三……”的取名方式。所以新插入的用戶窗體默認(rèn)名稱為“UserForm1”,如果再繼續(xù)插入窗體,就是“UserForm2”,接著是“UserForm3”……
  當(dāng)然,你可以為它重新取一個(gè)你喜歡的名字,新名字叫大花二花,或者是大狗二狗,隨你了,為了方便學(xué)習(xí),這里我們統(tǒng)一為其更名為“我的窗體”,方法為:在工程資源管理器中雙擊窗體對(duì)象,在屬性窗口中重新修改“(名稱)”(對(duì)象的name屬性)為“我的窗體”即可。修改完成后,可以在工程資源管理器窗口中看到相應(yīng)的名稱已經(jīng)改變了。
  

 


  這時(shí),窗體的“名稱”已經(jīng)修改好了,再看看窗體,左上角還顯示著“UserForm1”,這就相當(dāng)于貼在一個(gè)按鈕表面的標(biāo)簽,想要修改它,只需要修改對(duì)象的“Caption”屬性即可。用改“名稱”的方法,我們把這個(gè)窗體的“Caption”屬性修改為“我的第一個(gè)VBA窗體”。
  就像你家里貼的地板一樣,新建的窗體的大小樣子都一樣。但是我們根據(jù)自己的需要對(duì)其進(jìn)行美化或修改。如大小,背景顏色,背景圖片等等,我們可以手動(dòng)在屬性窗口里對(duì)其進(jìn)行修改,也可以程序中用代碼進(jìn)行修改。如修改該窗體的寬度,代碼設(shè)置為:
  
復(fù)制內(nèi)容到剪貼板
代碼:
  我的窗體.Width = 500         '500是你需要修改后的寬度,以磅(Point)為單位
  
  動(dòng)手試一試,在屬性窗口里設(shè)置“我的窗體”寬300 Point(Width屬性),高200 Point(Height屬性)。
  
  2、為窗體添加界面元素
  窗體就像一個(gè)舞臺(tái),舞臺(tái)上得有演員才能和觀眾進(jìn)行互動(dòng)。同樣,我們得為窗體這個(gè)舞臺(tái)添加演員,演員可以是命令按鈕、標(biāo)簽、文字框等等,你可以根據(jù)自己的劇本的需要安排不同的角色。
  向窗體添加控件,同在工作表中添加窗體控件一樣。如果你現(xiàn)在的VBE編輯窗口中沒有“工具箱”,請(qǐng)通過“視圖——>工具箱”菜單命令,或單擊“工具欄”上的“工具箱”按鈕打開它。
  

 


  想知道“工具箱”里的控件是哪一種是“命令按鈕”,哪一種是“標(biāo)簽”,哪一種是“文字框”,只需要把鼠標(biāo)指針移到相應(yīng)的控件上面,即會(huì)顯示相應(yīng)的說明。
  在工具箱里用鼠標(biāo)點(diǎn)選相應(yīng)的控件,在窗體上按下鼠標(biāo)左鍵,拖動(dòng)即可將控件添加到用戶窗體??丶拇笮?、在窗體上的位置我們可以通過鼠標(biāo)進(jìn)行修改,當(dāng)然,同修改其他屬性一樣,我們也可以在屬性窗口或程序的過程中用代碼進(jìn)行修改。
  別閑著,動(dòng)手試一試:
  (1)向窗體添加一個(gè)命令按鈕
  改按鈕名稱為“確定”。設(shè)置顯示在按鈕上的文字(Caption屬性)為“完成”,高25(Height屬性),寬60(Width屬性),距“我的窗體”左端220(Left屬性),距“我的窗體”頂端80(Top屬性)。
  
引用:
當(dāng)然,上面只是教你怎樣在屬性窗口里對(duì)控件的屬性進(jìn)行修改。要求不是太完美的時(shí)候,我們可以在窗體上用鼠標(biāo)拖動(dòng)修改一下就可以了。
  (2)向窗體添加一個(gè)標(biāo)簽
  改標(biāo)簽的名稱為“說明”。設(shè)置字體(Font屬性)為“宋體,五號(hào),斜體”,顯示的內(nèi)容(Caption屬性)為“請(qǐng)輸入內(nèi)容”(慢速雙擊激活控件即可輸入)。
  (3)向窗體添加一個(gè)文字框
  改文字框的名稱為“內(nèi)容”,設(shè)置字體(Font屬性)為“楷體五號(hào)字”,字體顏色(ForeColor屬性)為“紅色”。
  回到窗體設(shè)計(jì)模式,按F5鍵(或者執(zhí)行“運(yùn)行——>運(yùn)行子過程/窗體”菜單命令,或單擊工具欄上的“運(yùn)行子過程/窗體”命令按鈕),完整的一個(gè)用戶窗體就顯示在桌面上了。
  

 


  當(dāng)然,因?yàn)闆]有添加任何的VBA指令,此時(shí),窗體里的控件是不會(huì)工作的。
  
  (4)為命令按鈕添加事件過程
  上面的標(biāo)簽,文字框,命令按等控件(ActiveX控件,同我們剛開始說的窗體控件是有區(qū)別的)都屬于對(duì)象,我們可以通過編寫相應(yīng)的代碼設(shè)置其屬性,調(diào)用其方法,響應(yīng)其事件來達(dá)到我們需要實(shí)現(xiàn)的操作。
  比如在“我的窗體”中,如果需要在點(diǎn)擊“完成”按鈕(按鈕名稱為“確定”)后,用一個(gè)Msgbox告訴我們,文字框(名稱為“內(nèi)容”)里輸入的是什么內(nèi)容。
  有了這個(gè)思想,我們可以模擬把程序?qū)憺椋?br>  Sub 確定_單擊()
          Msgbox “文字框里輸入的內(nèi)容是:” & 內(nèi)容.輸入的內(nèi)容
  End Sub

  有了這個(gè)模擬的程序,再來寫就簡(jiǎn)單了。
  “單擊”是“確定”的一個(gè)事件,即Click事件,“內(nèi)容.輸入的內(nèi)容”是讀取“內(nèi)容”的Value屬性。
  這樣,我們的程序?qū)嶋H上是:
  
復(fù)制內(nèi)容到剪貼板
代碼:
  Sub 確定_Click()
      MsgBox "文字框里輸入的內(nèi)容是:" & 內(nèi)容.Value
  End Sub
  
  回到窗體,雙擊按鈕,切換到代碼模式,在左面“對(duì)象列表”中選擇對(duì)象“確定”,右面事件列表中選擇事件“Click”,將Sub與End Sub之間輸入代碼MsgBox "文字框里輸入的內(nèi)容是:" & 內(nèi)容.Value。回到設(shè)計(jì)模式下,按F5鍵,再次運(yùn)行窗體,在文字框里輸入內(nèi)容,單擊“完成”。
  也許你需要在文字框里什么也沒有輸時(shí),單擊按鈕后,提示我們“文字框里沒有輸入任何內(nèi)容”,并退出程序。可以的,加一個(gè)If—Then語句即可。如果需要將文字框里的內(nèi)容換行顯示,那么在提示內(nèi)容與顯示內(nèi)容之間再連接一個(gè)“Chr(13)”,就個(gè)的作用相當(dāng)工作表中的“Char(10)”,這里不再多說。
  我最后寫的代碼是:
  
復(fù)制內(nèi)容到剪貼板
代碼:
  Private Sub 確定_Click()
      If 內(nèi)容.Value = "" Then
          MsgBox "文本框里沒有輸入任何內(nèi)容!"
          Exit Sub      '退出sub過程,不再執(zhí)行下面的語句
      End If
      MsgBox "文字框里輸入的內(nèi)容是:" & Chr(13) & 內(nèi)容.Value
  End Sub
  
  
  3、顯示窗體
  顯示窗體就是把窗體顯示給用戶。
  顯示窗體可以調(diào)用窗體的Show方法。
  窗體的顯示模式有兩種:
  (1)模式窗體:窗體顯示后將停顯示之后的代碼直到退出或隱藏此窗體,并且必須退出或隱藏此窗體后,才可以操作非此窗體的其他界面元素。
  也就是說,當(dāng)你使用模式窗體顯示某窗體的時(shí)候,當(dāng)程序執(zhí)行完“顯示窗體”這條命令后,將暫停執(zhí)行程序里剩余的語句,真正這個(gè)窗體被隱藏或退出。關(guān)且當(dāng)窗體顯示出來以后,你不能激活該窗體以外的任何區(qū)域。
  (2)無模式窗體:窗體顯示后會(huì)繼續(xù)執(zhí)行程序里余下的語句,而其他的窗體或界面也可以進(jìn)行操作。
  
  顯示窗體的語句:
 ?。?)模式窗體的顯示代碼:
  窗體名稱.Show  vbModal
  也可以寫成:窗體名稱.Show 1
 ?。?)無模式窗體的顯示代碼:
  窗體名稱.Show  vbModeless
  也可以寫成:窗體名稱.Show 0


  
引用:
悄悄告訴你:因?yàn)閷?duì)于Show方法,如果不指定模式,則默認(rèn)為模式窗體,又因?yàn)槲液軕?,所以我的?xí)慣是:當(dāng)我需要用模式窗體的時(shí)候,就直接“窗體.Show”,需要無模式的時(shí)候就“窗體.Show 0”,多個(gè)0少個(gè)0而已,懶得去記那有模式無模式的字母,我英文差,反正看了也不一定認(rèn)識(shí)。
  
  4、關(guān)閉窗體
  當(dāng)不再需要使用某個(gè)窗體后,我們需要把它關(guān)閉。當(dāng)然,每一個(gè)窗體上都有“關(guān)閉”按鈕。但這肯定不能滿足我們?cè)诔绦虻脑O(shè)計(jì)過程中的需求。
  我們可以通過Hide來隱藏窗體。代碼為:
  窗體名稱.Hide

  也可以通過Unload來卸載窗體。代碼為:
  Unload 窗體名稱
  二者都可以關(guān)閉窗體,但是卻是有區(qū)別的。Show一個(gè)Hide的窗體比Show一個(gè)Unload的窗體用的時(shí)間要短。所以,當(dāng)你需要反復(fù)使用某個(gè)窗體的時(shí)候,建議你用Hide而不用Unload。
  
------------------------------------------------------------最后-----------------------------------------  
        上面講的這些內(nèi)容,打開VBE窗口,插入窗體,添加控件,修改屬性,編寫事件過程等等,這些,你都跟著做了嗎?如果你已經(jīng)做了,那最后我再留給你一點(diǎn)事情算是作業(yè)吧:
 ?。?)插入一個(gè)模塊,編寫兩個(gè)Sub過程,分別以“模式窗口”和“無模式窗口”顯示“我的窗體”(可在顯示窗體命令的下一行再編寫另外一條指令查看兩者在程序執(zhí)行過程中的區(qū)別);
 ?。?)在工作表上插入兩個(gè)窗體控件的按鈕(記住是窗體控件),分別改按鈕上顯示的字為“模式窗體”和“無模式窗體”,并把剛才編寫的兩個(gè)宏分別指定給它們;
  (3)再次進(jìn)行入“我的窗體”的設(shè)計(jì)模式,添加兩個(gè)按鈕,分別改其“Caption”屬性為“隱藏窗體”和“卸載窗體”。分別為兩個(gè)按鈕編寫響應(yīng)其相應(yīng)事件的代碼,使得當(dāng)單擊“隱藏窗體”按鈕時(shí),隱然“我的窗體”,單擊“卸載窗體”時(shí),卸載“我的窗體”。
  弄好后,你可以點(diǎn)擊工作表上的銨鈕,調(diào)出窗體,看看自己的第一件作品了。

       PS:這是我的作業(yè),供參考!
用戶窗體.rar (9.94 KB)

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
如何在PowerPoint里制作對(duì)話框?
VB- 工具欄、對(duì)話框
《Visual Basic語言程序設(shè)計(jì)基礎(chǔ)(第3版)》第2章 Visual Basic的開發(fā)環(huán)境
第七篇 Excel自動(dòng)化
MsgBox函數(shù)
VB利用ADO控件連接access數(shù)據(jù)庫(kù)
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服