第2章 Visual Basic程序設(shè)計(jì)基礎(chǔ)_第1頁
第2章 Visual Basic程序設(shè)計(jì)基礎(chǔ)_第2頁
第2章 Visual Basic程序設(shè)計(jì)基礎(chǔ)_第3頁
第2章 Visual Basic程序設(shè)計(jì)基礎(chǔ)_第4頁
第2章 Visual Basic程序設(shè)計(jì)基礎(chǔ)_第5頁
已閱讀5頁,還剩39頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、第第2章章 Visual Basic 程序設(shè)計(jì)基礎(chǔ)程序設(shè)計(jì)基礎(chǔ)第第2 2章章 Visual Basic Visual Basic 程序設(shè)計(jì)基礎(chǔ)程序設(shè)計(jì)基礎(chǔ)v2.1 2.1 程序設(shè)計(jì)概述程序設(shè)計(jì)概述v2.2 2.2 結(jié)構(gòu)化程序設(shè)計(jì)基礎(chǔ)結(jié)構(gòu)化程序設(shè)計(jì)基礎(chǔ)v2.3 2.3 可視化編程的基礎(chǔ)可視化編程的基礎(chǔ) 2021-12-312.12.1程序設(shè)計(jì)概述程序設(shè)計(jì)概述v 程序程序程序(程序(ProgramProgram)是計(jì)算機(jī)的一組指令,經(jīng)過編譯和執(zhí)行,)是計(jì)算機(jī)的一組指令,經(jīng)過編譯和執(zhí)行,計(jì)算機(jī)才可以完成一個(gè)具體的任務(wù)。計(jì)算機(jī)才可以完成一個(gè)具體的任務(wù)。v 程序設(shè)計(jì)語言程序設(shè)計(jì)語言程序設(shè)計(jì)語言程序設(shè)計(jì)語

2、言(Programming Language)(Programming Language):是用于編寫計(jì)算機(jī):是用于編寫計(jì)算機(jī)程序的語言。語言的基礎(chǔ)是一組記號(hào)和一組規(guī)則。根據(jù)規(guī)則程序的語言。語言的基礎(chǔ)是一組記號(hào)和一組規(guī)則。根據(jù)規(guī)則由記號(hào)構(gòu)成的記號(hào)串的總體就是語言。在程序設(shè)計(jì)語言中,由記號(hào)構(gòu)成的記號(hào)串的總體就是語言。在程序設(shè)計(jì)語言中,這些記號(hào)串就是程序。這些記號(hào)串就是程序。2021-12-312.12.1程序設(shè)計(jì)概述程序設(shè)計(jì)概述v 程序設(shè)計(jì)程序設(shè)計(jì)簡單地說,是設(shè)計(jì)程序的過程簡單地說,是設(shè)計(jì)程序的過程具體地說,是設(shè)計(jì)、編制、調(diào)試程序的方法和過程具體地說,是設(shè)計(jì)、編制、調(diào)試程序的方法和過程抽象地說,

3、是數(shù)據(jù)(抽象地說,是數(shù)據(jù)(Data StructureData Structure)+ + 算法(算法(AlgorithmAlgorithm)2021-12-312.12.1程序設(shè)計(jì)概述程序設(shè)計(jì)概述4. 4. 一般程序設(shè)計(jì)步驟一般程序設(shè)計(jì)步驟分析問題分析問題認(rèn)真分析,研究給定條件,分析最后應(yīng)達(dá)到的目標(biāo),找出解認(rèn)真分析,研究給定條件,分析最后應(yīng)達(dá)到的目標(biāo),找出解決問題的規(guī)律,選擇解題的方法,完成實(shí)際問題決問題的規(guī)律,選擇解題的方法,完成實(shí)際問題設(shè)計(jì)算法設(shè)計(jì)算法設(shè)計(jì)解題的方法和具體步驟設(shè)計(jì)解題的方法和具體步驟編寫程序編寫程序根據(jù)得到的算法,用一種高級(jí)語言編寫出源程序并通過測試根據(jù)得到的算法,用一種

4、高級(jí)語言編寫出源程序并通過測試對(duì)源程序進(jìn)行編輯、編譯和連接對(duì)源程序進(jìn)行編輯、編譯和連接運(yùn)行程序,分析結(jié)果運(yùn)行程序,分析結(jié)果2021-12-312.2 2.2 結(jié)構(gòu)化程序設(shè)計(jì)基礎(chǔ)結(jié)構(gòu)化程序設(shè)計(jì)基礎(chǔ)v 結(jié)構(gòu)化程序設(shè)計(jì)的原則結(jié)構(gòu)化程序設(shè)計(jì)的原則自頂向下自頂向下逐步細(xì)化逐步細(xì)化模塊化設(shè)計(jì)模塊化設(shè)計(jì)限制使用限制使用GOTOGOTO語句語句v 結(jié)構(gòu)化程序設(shè)計(jì)的三種基本結(jié)構(gòu)結(jié)構(gòu)化程序設(shè)計(jì)的三種基本結(jié)構(gòu) 順序結(jié)構(gòu)順序結(jié)構(gòu)選擇結(jié)構(gòu)選擇結(jié)構(gòu) 循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu)2021-12-312.2 2.2 結(jié)構(gòu)化程序設(shè)計(jì)基礎(chǔ)結(jié)構(gòu)化程序設(shè)計(jì)基礎(chǔ)2021-12-31v 結(jié)構(gòu)化程序設(shè)計(jì)算法的表示方式結(jié)構(gòu)化程序設(shè)計(jì)算法的表示方式 1.

5、 1. 流程圖流程圖 2.2 2.2 結(jié)構(gòu)化程序設(shè)計(jì)基礎(chǔ)結(jié)構(gòu)化程序設(shè)計(jì)基礎(chǔ)2021-12-31v 結(jié)構(gòu)化程序設(shè)計(jì)算法的表示方式結(jié)構(gòu)化程序設(shè)計(jì)算法的表示方式 2. N-S 2. N-S圖圖 2.2 2.2 結(jié)構(gòu)化程序設(shè)計(jì)基礎(chǔ)結(jié)構(gòu)化程序設(shè)計(jì)基礎(chǔ)2021-12-31v 結(jié)構(gòu)化程序設(shè)計(jì)算法的表示方式結(jié)構(gòu)化程序設(shè)計(jì)算法的表示方式 3. 3. 偽碼表示偽碼表示一種用接近高級(jí)語言的代碼描述程序設(shè)計(jì)的結(jié)構(gòu)一種用接近高級(jí)語言的代碼描述程序設(shè)計(jì)的結(jié)構(gòu)例如:例如:VBVB語言分支結(jié)構(gòu):語言分支結(jié)構(gòu): If If 條件描述條件描述 Then Then 條件滿足時(shí)的計(jì)算過程條件滿足時(shí)的計(jì)算過程Else Else 條件不

6、能滿足時(shí)的計(jì)算過程條件不能滿足時(shí)的計(jì)算過程 End IfEnd If例如:例如:VBVB語言循環(huán)結(jié)構(gòu):語言循環(huán)結(jié)構(gòu): WhileWhile(循環(huán)執(zhí)行的邏輯條件描述)(循環(huán)執(zhí)行的邏輯條件描述) 條件滿足時(shí)的執(zhí)行過程條件滿足時(shí)的執(zhí)行過程 WendWend 2.3 2.3 可視化編程的基礎(chǔ)可視化編程的基礎(chǔ) 2021-12-31窗體對(duì)象窗體對(duì)象圖片框?qū)ο髨D片框?qū)ο笪谋究驅(qū)ο笪谋究驅(qū)ο竺畎粹o對(duì)象命令按鈕對(duì)象 VB VB系統(tǒng)中的常用對(duì)象系統(tǒng)中的常用對(duì)象2.3.1 2.3.1 對(duì)象對(duì)象窗體和控件就是預(yù)定義對(duì)象窗體和控件就是預(yù)定義對(duì)象2.3 2.3 可視化編程的基礎(chǔ)可視化編程的基礎(chǔ) 2.3.2 2.3.2

7、對(duì)象的屬性(對(duì)象的屬性(PropertiesProperties) v 屬性用來表示對(duì)象的特征,每一種對(duì)象所具有的屬性不同。屬性用來表示對(duì)象的特征,每一種對(duì)象所具有的屬性不同。2021-12-312.3 2.3 可視化編程的基礎(chǔ)可視化編程的基礎(chǔ) 2.3.2 2.3.2 對(duì)象的屬性(對(duì)象的屬性(PropertiesProperties) v 屬性的設(shè)置屬性的設(shè)置1.1.在設(shè)計(jì)階段,從屬性窗口設(shè)置,只用于屬性的初始化設(shè)置。在設(shè)計(jì)階段,從屬性窗口設(shè)置,只用于屬性的初始化設(shè)置。 先激活對(duì)象先激活對(duì)象,再設(shè)置屬性,再設(shè)置屬性2.2.在運(yùn)行階段,由程序語句設(shè)置或改變屬性的值。在運(yùn)行階段,由程序語句設(shè)置或改

8、變屬性的值。 對(duì)象名對(duì)象名. . 屬性名屬性名 = = 屬性值屬性值 v 注意:大多數(shù)屬性都可以通過以上兩種方式進(jìn)行設(shè)置,注意:大多數(shù)屬性都可以通過以上兩種方式進(jìn)行設(shè)置,但個(gè)別屬性只能在屬性窗口,或使用程序代碼設(shè)置。但個(gè)別屬性只能在屬性窗口,或使用程序代碼設(shè)置。2021-12-312.3 2.3 可視化編程的基礎(chǔ)可視化編程的基礎(chǔ) 2.3.3 2.3.3 對(duì)象的事件(對(duì)象的事件(EventEvent)v 事件是由系統(tǒng)事先設(shè)定的,能為對(duì)象識(shí)別和響應(yīng)的動(dòng)作。每一事件是由系統(tǒng)事先設(shè)定的,能為對(duì)象識(shí)別和響應(yīng)的動(dòng)作。每一種對(duì)象能識(shí)別的事件是不同的。種對(duì)象能識(shí)別的事件是不同的。2021-12-312.3 2

9、.3 可視化編程的基礎(chǔ)可視化編程的基礎(chǔ) 2.3.3 2.3.3 對(duì)象的事件(對(duì)象的事件(EventEvent)v 每個(gè)事件過程由一個(gè)相應(yīng)的事件觸發(fā)(驅(qū)動(dòng)),而不是由主程每個(gè)事件過程由一個(gè)相應(yīng)的事件觸發(fā)(驅(qū)動(dòng)),而不是由主程序調(diào)用。序調(diào)用。v 事件驅(qū)動(dòng)過程,程序沒有固定的執(zhí)行順序。事件驅(qū)動(dòng)過程,程序沒有固定的執(zhí)行順序。2021-12-31對(duì)象待命對(duì)象待命用戶用戶/系統(tǒng)觸發(fā)事件系統(tǒng)觸發(fā)事件對(duì)象對(duì)事件的響應(yīng)對(duì)象對(duì)事件的響應(yīng)(程序代碼)(程序代碼)2.3 2.3 可視化編程的基礎(chǔ)可視化編程的基礎(chǔ) 2.3.4 2.3.4 對(duì)象的方法(對(duì)象的方法(MethodMethod)v 對(duì)象的方法就是對(duì)象要執(zhí)行的動(dòng)

10、作。對(duì)象的方法就是對(duì)象要執(zhí)行的動(dòng)作。v 方法與事件過程類似,是一種特殊的過程和函數(shù),它用于完成方法與事件過程類似,是一種特殊的過程和函數(shù),它用于完成某種特定功能而不能響應(yīng)某個(gè)事件某種特定功能而不能響應(yīng)某個(gè)事件常見方法:常見方法:PrintPrint(打印對(duì)象)、(打印對(duì)象)、ShowShow(顯示窗體)、(顯示窗體)、MoveMove(移動(dòng))(移動(dòng))格式:格式: 對(duì)象名對(duì)象名.方法名方法名 參數(shù)參數(shù)1 1,參數(shù),參數(shù)2 2,每個(gè)方法完成某個(gè)功能,用戶無法看到其實(shí)現(xiàn)的步驟和細(xì)節(jié),每個(gè)方法完成某個(gè)功能,用戶無法看到其實(shí)現(xiàn)的步驟和細(xì)節(jié),更不能修改,用戶能做的工作只是按照約定直接調(diào)用它們。更不能修改,

11、用戶能做的工作只是按照約定直接調(diào)用它們。2021-12-312.3 2.3 可視化編程的基礎(chǔ)可視化編程的基礎(chǔ) 2.3.5 2.3.5 窗體窗體 2021-12-31缺省窗體缺省窗體2.3 2.3 可視化編程的基礎(chǔ)可視化編程的基礎(chǔ) 1.1.窗體的主要屬性窗體的主要屬性NameName(名稱)屬性(名稱)屬性CaptionCaption(標(biāo)題)屬性(標(biāo)題)屬性LeftLeft、Top Top (左、頂)屬性(左上角為(左、頂)屬性(左上角為0,00,0, 單位為單位為TwipTwip緹緹)WidthWidth、HeightHeight(寬、高)屬性(寬、高)屬性EnabledEnabled(可用)

12、屬性(可用)屬性VisibleVisible(可見)屬性(可見)屬性2021-12-312.3 2.3 可視化編程的基礎(chǔ)可視化編程的基礎(chǔ) FontFont(字體)屬性(字體)屬性 FontFont字體本身又是一個(gè)對(duì)象,又有自己的屬性,包括:字體本身又是一個(gè)對(duì)象,又有自己的屬性,包括:字體類型(字體類型(FontNameFontName)字體大小(字體大?。‵ontSizeFontSize)是否粗體(是否粗體(FontBoldFontBold)是否斜體(是否斜體(FontItalicFontItalic)是否加下劃線(是否加下劃線(FontUnderlineFontUnderline)Form1

13、.Font.Bold = TrueForm1.Font.Bold = TrueForm1.FontBold = TrueForm1.FontBold = True2021-12-31等價(jià)于等價(jià)于2.3 2.3 可視化編程的基礎(chǔ)可視化編程的基礎(chǔ) ForeColorForeColor、 BackColorBackColor(前景色、背景色)屬性(前景色、背景色)屬性其值是一個(gè)十六進(jìn)制常數(shù)其值是一個(gè)十六進(jìn)制常數(shù)MaxButtonMaxButton、MinButtonMinButton(最大、最小化按鈕)屬性(最大、最小化按鈕)屬性ControlBoxControlBox(控制框)屬性(控制框)屬性B

14、orderStyleBorderStyle屬性值為屬性值為1 1、2 2、3 3時(shí)才有效,只讀屬性時(shí)才有效,只讀屬性BorderStyleBorderStyle(邊框類型)屬性(邊框類型)屬性IconIcon(圖標(biāo))屬性(圖標(biāo))屬性PicturePicture(圖形)屬性(圖形)屬性2021-12-312.3 2.3 可視化編程的基礎(chǔ)可視化編程的基礎(chǔ) PicturePicture(圖形)屬性(圖形)屬性在程序代碼中設(shè)置在程序代碼中設(shè)置PicturePicture屬性:屬性:LoadPictureLoadPicture函數(shù)函數(shù) 對(duì)象名對(duì)象名. Picture = . Picture = Load

15、PictureLoadPicture(文件名文件名)文件名用西文雙撇號(hào),不能是中文雙引號(hào)文件名用西文雙撇號(hào),不能是中文雙引號(hào)文件名要帶有路徑。路徑可以是絕對(duì)路徑或相對(duì)路徑文件名要帶有路徑。路徑可以是絕對(duì)路徑或相對(duì)路徑Picture1.Picture = Picture1.Picture = LoadPictureLoadPicture(D:vb1.bmp)(D:vb1.bmp)Form1.Picture = Form1.Picture = LoadPictureLoadPicture( (App.PathApp.Path & 2.bmp) & 2.bmp)指定文件名為空,表示卸

16、載已載入的圖形文件指定文件名為空,表示卸載已載入的圖形文件Form1.Picture = Form1.Picture = LoadPictureLoadPicture()() Form1.Picture = Form1.Picture = LoadPictureLoadPicture()()2021-12-31【例例2-22-2】 窗體的標(biāo)題為窗體的標(biāo)題為“可視化實(shí)例可視化實(shí)例”,字體為宋體三號(hào)字,字體為宋體三號(hào)字,背景色為背景色為“淺藍(lán)色淺藍(lán)色”。3 3個(gè)文本框,兩個(gè)命令按鈕,個(gè)文本框,兩個(gè)命令按鈕,試觀察文試觀察文本框本框FontFont屬性與屬性與CommandCommand按鈕按鈕Fo

17、ntFont屬性。屬性。命令按鈕命令按鈕1 1的的ClickClick事事件為清除文本框件為清除文本框1 1的內(nèi)容,命令按鈕的內(nèi)容,命令按鈕2 2的的ClickClick事件為結(jié)束程序事件為結(jié)束程序運(yùn)行。當(dāng)文本框運(yùn)行。當(dāng)文本框1 1的內(nèi)容發(fā)生變化時(shí),將文本框的內(nèi)容發(fā)生變化時(shí),將文本框1 1的內(nèi)容變的內(nèi)容變小寫小寫給文本框給文本框2 2;文本框;文本框1 1的內(nèi)容變的內(nèi)容變大寫大寫給文本框給文本框3 3。2021-12-312.3 2.3 可視化編程的基礎(chǔ)可視化編程的基礎(chǔ) 在在VBVB工程工程1 1下新建窗體下新建窗體1 1添加控件:添加控件:3 3個(gè)文本框,兩個(gè)命令按鈕,并設(shè)置屬性個(gè)文本框,兩

18、個(gè)命令按鈕,并設(shè)置屬性2021-12-31對(duì)象屬性屬性值窗體Caption可視化實(shí)例BackColor&H00FFC0C0&FontName宋體FontSize三號(hào)文本框1BackColor文本框2BackColor文本框3BackColor命令按鈕1Caption清除命令按鈕2Caption結(jié)束2.3 2.3 可視化編程的基礎(chǔ)可視化編程的基礎(chǔ) 編程策略編程策略v Command1_ClickCommand1_Click事件事件v Command2_ClickCommand2_Click事件事件v TextText1_Change1_Change事件事件編寫代碼編寫代碼Priv

19、ate Sub Command1_Click()Private Sub Command1_Click() Text1.Text = Text1.Text = End SubEnd SubPrivate Sub Command2_Click()Private Sub Command2_Click() End EndEnd SubEnd Sub存盤存盤運(yùn)行運(yùn)行2021-12-31Private Sub Text1_Change()Private Sub Text1_Change() Text2.Text = Text2.Text = LCaseLCase(Text1.Text)(Text1.Tex

20、t) Text3.Text = Text3.Text = UCaseUCase(Text1.Text)(Text1.Text)End SubEnd Sub2.3 2.3 可視化編程的基礎(chǔ)可視化編程的基礎(chǔ) 2.3 2.3 可視化編程的基礎(chǔ)可視化編程的基礎(chǔ) 2.2. 窗體的主要事件窗體的主要事件 LoadLoad事件事件窗體裝載時(shí)發(fā)生窗體裝載時(shí)發(fā)生LoadLoad事件,適用于啟動(dòng)應(yīng)用程序時(shí)對(duì)屬性和變事件,適用于啟動(dòng)應(yīng)用程序時(shí)對(duì)屬性和變量的初始化量的初始化ClickClick、MouseDownMouseDown、MouseUpMouseUp等鼠標(biāo)事件等鼠標(biāo)事件KeyPressKeyPress、Ke

21、yDownKeyDown 、KeyUpKeyUp等鍵盤事件等鍵盤事件UnloadUnload、DblClickDblClick、ActivateActivate、DeactivateDeactivate、PaintPaint等事件等事件 2021-12-31【例例2-32-3】觀察窗體運(yùn)行與結(jié)束時(shí)激發(fā)窗體各事件發(fā)生順序。觀察窗體運(yùn)行與結(jié)束時(shí)激發(fā)窗體各事件發(fā)生順序。新建一個(gè)窗體,調(diào)用新建一個(gè)窗體,調(diào)用DebugDebug對(duì)象,在立即窗口觀察各事件運(yùn)行順對(duì)象,在立即窗口觀察各事件運(yùn)行順序,在代碼窗口窗體的以下事件下鍵入如下代碼:序,在代碼窗口窗體的以下事件下鍵入如下代碼:Private Sub P

22、rivate Sub Form_ActivateForm_Activate()() Debug.PrintDebug.Print 窗體激活事件窗體激活事件: :Form_ActivateForm_Activate End SubEnd SubPrivate Sub Private Sub Form_DeactivateForm_Deactivate()() Debug.PrintDebug.Print 窗體關(guān)閉事件窗體關(guān)閉事件: :Form_DeactivateForm_Deactivate End SubEnd SubPrivate Sub Private Sub Form_PaintFor

23、m_Paint()() Debug.PrintDebug.Print 窗體繪圖事件窗體繪圖事件: :Form_PaintForm_Paint End SubEnd Sub2021-12-312.3 2.3 可視化編程的基礎(chǔ)可視化編程的基礎(chǔ) Private Sub Private Sub Form_LoadForm_Load()() Debug.PrintDebug.Print 窗體調(diào)用事件窗體調(diào)用事件: :Form_loadForm_load End SubEnd SubPrivate Sub Private Sub Form_UnloadForm_Unload(Cancel As Integ

24、er)(Cancel As Integer) Debug.PrintDebug.Print 窗體退出事件窗體退出事件: :Form_UnloadForm_Unload End SubEnd SubPrivate Sub Private Sub Form_ResizeForm_Resize()() Debug.PrintDebug.Print 窗體重新改變大小事件窗體重新改變大小事件: :Form_ResizeForm_Resize End SubEnd SubPrivate Sub Private Sub Form_TerminateForm_Terminate()() Debug.Print

25、Debug.Print 窗體終止事件窗體終止事件: :Form_TerminateForm_Terminate End SubEnd Sub2021-12-312.3 2.3 可視化編程的基礎(chǔ)可視化編程的基礎(chǔ) v 窗體運(yùn)行后,再關(guān)閉,則在立即窗口,顯示如下信息:窗體運(yùn)行后,再關(guān)閉,則在立即窗口,顯示如下信息:窗體調(diào)用事件窗體調(diào)用事件: :Form_Form_L Loadoad窗體重新改變大小事件窗體重新改變大小事件: :Form_ResizeForm_Resize窗體激活事件窗體激活事件: :Form_ActivateForm_Activate窗體繪圖事件窗體繪圖事件: :Form_Paint

26、Form_Paint窗體退出事件窗體退出事件: :Form_UnloadForm_Unload窗體終止事件窗體終止事件: :Form_TerminateForm_Terminatev 說明事件發(fā)生順序說明事件發(fā)生順序可見窗體運(yùn)行時(shí)系統(tǒng)事件是有先后順序的,即只有窗體可見窗體運(yùn)行時(shí)系統(tǒng)事件是有先后順序的,即只有窗體LoadLoad事事件發(fā)生后,才可發(fā)成件發(fā)生后,才可發(fā)成ActivateActivate事件;當(dāng)窗體被激活后,才可以事件;當(dāng)窗體被激活后,才可以發(fā)生發(fā)生PaintPaint事件。事件。2021-12-312.3 2.3 可視化編程的基礎(chǔ)可視化編程的基礎(chǔ) 2.3 2.3 可視化編程的基礎(chǔ)可

27、視化編程的基礎(chǔ) 3.3.窗體的主要方法窗體的主要方法 MoveMove方法方法 對(duì)象名對(duì)象名 .Move Left ,Top ,Width ,Height .Move Left ,Top ,Width ,Height ClsCls方法方法 對(duì)象名對(duì)象名.ClsCls PrintPrint方法方法 對(duì)象名對(duì)象名. Print . Print 輸出項(xiàng)輸出項(xiàng)1 1,輸出項(xiàng),輸出項(xiàng)2 2,2021-12-312.3 2.3 可視化編程的基礎(chǔ)可視化編程的基礎(chǔ) ShowShow方法方法 v 顯示顯示FormForm對(duì)象。對(duì)象。 窗體名窗體名 .Show .Show 模式模式 1 1表示窗體狀態(tài)為表示窗體狀

28、態(tài)為“模態(tài)模態(tài)”/ 0/ 0表示窗體狀態(tài)為表示窗體狀態(tài)為“非模態(tài)非模態(tài)” ” HideHide方法方法 v 隱藏隱藏FormForm對(duì)象,但不能使其卸載。對(duì)象,但不能使其卸載。 窗體名窗體名.Hide .Hide 2021-12-312.3 2.3 可視化編程的基礎(chǔ)可視化編程的基礎(chǔ) v 多重窗體的添加多重窗體的添加 / / 刪除刪除1.1.添加窗體添加窗體執(zhí)行菜單命令執(zhí)行菜單命令“工程工程” ” / “/ “添加窗體添加窗體”在在“工程資源窗口工程資源窗口”內(nèi)執(zhí)行右鍵菜單命令內(nèi)執(zhí)行右鍵菜單命令“添加添加” ” / “/ “添加添加窗體窗體”2.2.刪除窗體刪除窗體激活該窗體,執(zhí)行菜單命令激活該

29、窗體,執(zhí)行菜單命令“工程工程” ” / “/ “移除窗體移除窗體” ” 指向指向“工程資源窗口工程資源窗口”欲刪除的窗體名,執(zhí)行右鍵菜單的欲刪除的窗體名,執(zhí)行右鍵菜單的“移移除窗體除窗體”命令命令2021-12-312.3 2.3 可視化編程的基礎(chǔ)可視化編程的基礎(chǔ) v 多重窗體的切換(加載多重窗體的切換(加載 / / 卸載、隱藏卸載、隱藏 / / 顯示)顯示)1.1.LoadLoad語句語句將窗體加載到(只加載不顯示)內(nèi)存,可以引用窗體將窗體加載到(只加載不顯示)內(nèi)存,可以引用窗體中的控件和屬性中的控件和屬性Load Load 窗體名窗體名2.2.UnloadUnload語句語句從內(nèi)存卸載窗體

30、從內(nèi)存卸載窗體Unload Unload 窗體名窗體名3.3.ShowShow方法方法兼有裝入和顯示窗體兩種功能兼有裝入和顯示窗體兩種功能 窗體名窗體名. Show. Show4.4.HideHide方法方法使窗體隱藏,即不在屏幕上顯示,但仍存在內(nèi)存中使窗體隱藏,即不在屏幕上顯示,但仍存在內(nèi)存中 窗體名窗體名. Hide. Hide2021-12-312.3 2.3 可視化編程的基礎(chǔ)可視化編程的基礎(chǔ) v 多重窗體的啟動(dòng)多重窗體的啟動(dòng)通過菜單命令通過菜單命令“工程工程” ” / “/ “工程屬性工程屬性” ” 指定一個(gè)啟動(dòng)窗體;指定一個(gè)啟動(dòng)窗體;若未指定,系統(tǒng)把設(shè)計(jì)時(shí)的第一個(gè)窗體作為啟動(dòng)窗體。若

31、未指定,系統(tǒng)把設(shè)計(jì)時(shí)的第一個(gè)窗體作為啟動(dòng)窗體。v 多重窗體的存取多重窗體的存取1.1.每個(gè)窗體應(yīng)分別保存到每個(gè)窗體應(yīng)分別保存到. .frmfrm的窗體文件中的窗體文件中2.2.只須打開該工程的只須打開該工程的. .vbpvbp管理文件,則屬于該工程的所有文件管理文件,則屬于該工程的所有文件(包括(包括. .frmfrm和和.bas.bas文件)均裝入內(nèi)存文件)均裝入內(nèi)存v 多重窗體的編譯多重窗體的編譯無論一個(gè)工程包括多少窗體,都可以通過菜單命令無論一個(gè)工程包括多少窗體,都可以通過菜單命令“文件文件” ” / “/ “生成生成 * *.exe”.exe” 生成生成WindowsWindows中的

32、可執(zhí)行文件中的可執(zhí)行文件2021-12-31【例例2-42-4】新建一個(gè)新建一個(gè)VBVB工程,添加工程,添加3 3個(gè)窗體個(gè)窗體v 修改修改3 3個(gè)窗體個(gè)窗體PicturePicture屬性,用屬性,用LoadPictureLoadPicture函數(shù)在代碼窗口加載函數(shù)在代碼窗口加載三個(gè)圖像文件三個(gè)圖像文件1.bmp1.bmp、2.bmp2.bmp和和3.bmp3.bmp。v 當(dāng)單擊窗體當(dāng)單擊窗體1 1時(shí),窗體時(shí),窗體2 2顯示,窗體顯示,窗體1 1隱藏隱藏當(dāng)單擊窗體當(dāng)單擊窗體2 2時(shí),窗體時(shí),窗體3 3顯示,窗體顯示,窗體2 2隱藏隱藏當(dāng)單擊窗體當(dāng)單擊窗體3 3時(shí),窗體時(shí),窗體2 2和窗體和窗體

33、3 3退出,而窗體退出,而窗體1 1顯示顯示單擊關(guān)閉按鈕結(jié)束單擊關(guān)閉按鈕結(jié)束新建一個(gè)新建一個(gè)VBVB工程,再添加工程,再添加2 2個(gè)窗體個(gè)窗體修改修改3 3個(gè)窗體個(gè)窗體PicturePicture屬性屬性編寫代碼編寫代碼2021-12-312.3 2.3 可視化編程的基礎(chǔ)可視化編程的基礎(chǔ) 新建窗體新建窗體Form2Form2,F(xiàn)orm3Form3 先分別將先分別將Form1Form1、Form2Form2、Form3Form3存盤,再將工程文件存盤,再將工程文件. .vbpvbp存存盤盤2021-12-312.3 2.3 可視化編程的基礎(chǔ)可視化編程的基礎(chǔ) 存盤前后工程窗口的區(qū)別存盤前后工程窗口

34、的區(qū)別Form1Form1的代碼的代碼Private Sub Private Sub FormForm_Click_Click()() Form2.Show Form2.Show Form1.Hide Form1.HideEnd SubEnd SubPrivate Sub Private Sub FormForm_Load_Load()() Form1.Picture = Form1.Picture = LoadPictureLoadPicture(1.bmp)(1.bmp) End Sub End Sub2021-12-312.3 2.3 可視化編程的基礎(chǔ)可視化編程的基礎(chǔ) ?系統(tǒng)能系統(tǒng)能區(qū)分不區(qū)分不同窗體同窗體的代碼的代碼嗎?嗎?Form2Form2的代碼的代碼Private Sub Private Sub FormForm_Cl

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論