VB最全課件-教程【完整版】_第1頁(yè)
VB最全課件-教程【完整版】_第2頁(yè)
VB最全課件-教程【完整版】_第3頁(yè)
VB最全課件-教程【完整版】_第4頁(yè)
VB最全課件-教程【完整版】_第5頁(yè)
已閱讀5頁(yè),還剩328頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第1章 Visual Basic 編程環(huán)境沈陽(yáng)理工大學(xué)應(yīng)用技術(shù)學(xué)院0.本章內(nèi)容 可視化與事件驅(qū)動(dòng)型語(yǔ)言 Visual Basic 的啟動(dòng)與退出主窗口其他窗口 2 1.可視化與事件驅(qū)動(dòng)型語(yǔ)言可視化界面設(shè)計(jì) VB提供的可視化設(shè)計(jì)平臺(tái),把Windows界面設(shè)計(jì)的復(fù)雜性“封裝起來(lái)。程序員不必再為界面的設(shè)計(jì)而編寫(xiě)大量程序代碼,只需用系統(tǒng)提供的工具在屏幕上“畫(huà)出各種對(duì)象,程序員所需要編寫(xiě)的只是實(shí)現(xiàn)程序功能的那局部代碼。事件驅(qū)動(dòng)的編程機(jī)制 VB通過(guò)事件來(lái)執(zhí)行對(duì)象的操作。由用戶操作引發(fā)某個(gè)事件來(lái)驅(qū)動(dòng)完成某種特定的功能,或由事件驅(qū)動(dòng)程序調(diào)用通用過(guò)程來(lái)執(zhí)行指定的操作3 啟動(dòng)VB的方法(1) 在“開(kāi)始菜單的“程序組

2、中用鼠標(biāo)單擊“Microoft Visual Basic6.0(2) 用鼠標(biāo)雙擊桌面上的“Microoft Visual Basic 6.0快捷圖標(biāo)(3) 在“運(yùn)行中,輸入VB 程序所在的路徑(4) 進(jìn)入VB文件夾雙擊VB 程序文件.exeVB啟動(dòng)后,首先顯示“新建工程對(duì)話框,缺省狀態(tài)下“新建工程對(duì)話框的選項(xiàng)為“標(biāo)準(zhǔn)EXE ,是典型的應(yīng)用程序。2.Visual Basic 的啟動(dòng)與退出4 退出VB 單擊“關(guān)閉按鈕,或選擇“文件菜單中的“退出命令或按ALT+Q2.Visual Basic 的啟動(dòng)與退出5 3.主窗口由標(biāo)題欄、菜單欄和工具欄組成 6 菜單欄工具欄代碼窗口工具箱窗體窗口立即窗口監(jiān)視窗

3、口工程窗口屬性窗口布局窗口標(biāo)題欄標(biāo)題欄 屏幕頂部的水平條,顯示窗口的標(biāo)題名字和工作模式。 VB有三種工作模式:設(shè)計(jì)模式、 運(yùn)行模式、中斷模式。菜單欄 提供了開(kāi)發(fā)、調(diào)試和保存應(yīng)用程序所需的工具。菜單欄中有13個(gè)菜單項(xiàng),即“文件、“編輯、“視圖、“工程、“格式、“調(diào)試、“運(yùn)行、“查詢、“圖表、“工具、“外接程序、“窗口、“幫助 。3.主窗口由標(biāo)題欄、菜單欄和工具欄組成 7 工具欄 它以圖標(biāo)按鈕的形式提供了常用的菜單命令。單擊工具欄上的按鈕,那么執(zhí)行該按鈕所代表的操作。按照缺省規(guī)定,啟動(dòng)VB之后顯示“標(biāo)準(zhǔn)工具欄。3.主窗口由標(biāo)題欄、菜單欄和工具欄組成 8 4.其他窗口窗體設(shè)計(jì)器窗口9 窗體設(shè)計(jì)窗口窗

4、體名窗體文件名 簡(jiǎn)稱窗體,它可以作為自定義窗口。用戶可以在窗體中添加控件、圖形和圖片來(lái)創(chuàng)立所希望的外觀。每個(gè)窗口必須有一個(gè)的窗體名字,建立窗體時(shí)缺省名為Form1,Form2, . . .。 應(yīng)注意窗體名即Name屬性和窗體文件名的區(qū)別 4.其他窗口工程資源管理器窗口工程是指用于創(chuàng)立一個(gè)應(yīng)用程序的文件的集合。工程資源管理器列出了當(dāng)前工程中的窗體和模塊三個(gè)按鈕:查看代碼,查看對(duì)象,切換文件夾共有六種文件類型:窗體文件(.frm)程序模塊文件(.bas)類模塊文件(.cls)工程文件(.vbp)工程組文件.vbg資源文件(.res) 10 4.其他窗口屬性窗口屬性是指對(duì)象的特征,如大小、標(biāo)題或顏色

5、等數(shù)據(jù)屬性窗口有四局部組成:對(duì)象框?qū)傩燥@示框?qū)傩粤斜砜虍?dāng)前屬性解釋框11 4.其他窗口工具箱窗口由工具圖標(biāo)組成。工具分兩類:內(nèi)部控件(標(biāo)準(zhǔn)控件)ActiveX控件??丶拖裆w房子使用的門(mén)、窗、磚瓦等,都是現(xiàn)成部件,只要到現(xiàn)場(chǎng)組合就可以了VB工具箱中包含了各種VB標(biāo)準(zhǔn)控件。包含一個(gè)指針和20個(gè)標(biāo)準(zhǔn)控件12 第2章 對(duì)象與根本控件沈陽(yáng)理工大學(xué)應(yīng)用技術(shù)學(xué)院0.本章內(nèi)容 對(duì)象及其屬性設(shè)置 窗體 控件 控件的畫(huà)法和根本操作 文本控件 圖形控件 按鈕控件14 1.對(duì)象及其屬性設(shè)置VB的對(duì)象對(duì)象 是VB系統(tǒng)中的根本運(yùn)行實(shí)體,對(duì)象分二類:一類是預(yù)定義對(duì)象,由系統(tǒng)設(shè)計(jì)好可直接使用或操作窗體和控件;另一類是自定義

6、對(duì)象??梢杂脤傩?、方法、事件三個(gè)方面來(lái)描述它。對(duì)象的屬性每個(gè)對(duì)象都有其特征,在VB中叫做屬性。設(shè)置屬性有兩條途徑:在程序設(shè)計(jì)時(shí)設(shè)置對(duì)象的屬性,需要使用屬性窗口。在程序運(yùn)行中更改對(duì)象的屬性,可以使用VB的賦值語(yǔ)句:對(duì)象名.屬性名 屬性值15 1.對(duì)象及其屬性設(shè)置對(duì)象事件 由系統(tǒng)預(yù)先設(shè)置好的、能被對(duì)象識(shí)別的動(dòng)作。如:鼠標(biāo)的移動(dòng)(MouseMove)、單擊(Click)和雙擊(Dblclick),窗體的裝載(Load)等。每一種對(duì)象能識(shí)別的事件是不同的事件過(guò)程響應(yīng)某事件后所執(zhí)行的程序代碼段。 事件過(guò)程的語(yǔ)法格式如下 Sub 對(duì)象名_事件名() 處理事件的程序代碼 End Sub16 1.對(duì)象及其屬性

7、設(shè)置 例如:命令按鈕Command1的單擊(Click)事件過(guò)程為: Private Sub Command1_Click() Forml.Caption = “在窗體上畫(huà)圓 以圓心(2400,1500), 半徑為800畫(huà)圓 Forml.Circle (2400,1500),800 End Sub17 1.對(duì)象及其屬性設(shè)置對(duì)象方法 方法是對(duì)象所能提供的功能。VB的方法用于完成某種特定功能。如對(duì)象打印Print方法、顯示窗體Show方法、移動(dòng)Move方法。調(diào)用對(duì)象方法: 對(duì)象名.方法名例: Form1.Cls 消除窗體Form1上的內(nèi)容 Print Visual BASIC 在當(dāng)前窗體上顯示18

8、 1.對(duì)象及其屬性設(shè)置對(duì)象屬性設(shè)計(jì)激活屬性窗口的方法:1. 用鼠標(biāo)單擊屬性窗口任何部位2. 執(zhí)行“視圖菜單的“屬性窗口命令3. 按F4鍵4. 單擊工具欄上的“屬性窗口按鈕5. 按組合鍵 Ctrl+PgDn或Ctrl+PgUp對(duì)象屬性設(shè)計(jì)的方法:1. 直接輸入新屬性值2. 選擇輸入通過(guò)下拉列表選擇所需屬性值3. 利用對(duì)話框設(shè)置屬性值19 2. 窗體窗體的結(jié)構(gòu)與屬性窗體的結(jié)構(gòu):圖標(biāo)、標(biāo)題欄、控制菜單、最小化按鈕、最大化按鈕、關(guān)閉按鈕 20 2. 窗體窗體的屬性:窗體的許多屬性會(huì)影響窗體的外觀。用兩種方法設(shè)置窗體屬性: 1通過(guò)屬性窗口 2通過(guò)程序代碼設(shè)置窗體的常用屬性:Name 屬性:窗體的名稱即標(biāo)

9、識(shí)符(缺省值Form1)Caption 屬性:設(shè)置標(biāo)題欄顯示的內(nèi)容Left 屬性:設(shè)置窗體左上角的橫坐標(biāo)Top 屬性:設(shè)置窗體左上角的縱坐標(biāo)Width 屬性:設(shè)置窗體的寬度Height 屬性:設(shè)置窗體的高度21 2. 窗體FontBold 屬性:設(shè)置窗體上輸出的字符是否為粗體 FontItalic 屬性:設(shè)置窗體上輸出的字符是否為斜體 FontName 屬性:決定窗體上正文的字體(缺省為宋體)FontSize 屬性:決定窗體上正文的字體大小Enabled 屬性:決定窗體是否對(duì)事件產(chǎn)生響應(yīng)Visible 屬性:窗體在程序運(yùn)行時(shí)是否可見(jiàn)BackColor 屬性:用于確定窗體的背景顏色ForeCol

10、or 屬性:用于確定窗體里顯示圖片和文本的 前景顏色Moveable 屬性:窗體在程序運(yùn)行時(shí)是否可以移動(dòng)WindowsState 屬性:窗體在運(yùn)行時(shí)的大小。 0:常態(tài);1:最小化;2:最大化。Boderstyle 屬性:用于確定窗體的邊框風(fēng)格22 2. 窗體窗體事件Click事件(單擊) 該事件是在單擊一個(gè)空白區(qū)或一個(gè)無(wú)效控件時(shí)發(fā)生。如果單擊的是窗體內(nèi)的控件,那么執(zhí)行該控件的Click 事件。DbClick事件(雙擊) 該事件是在雙擊一個(gè)空白區(qū)或一個(gè)無(wú)效控件時(shí)發(fā)生。Load事件 先把窗體屬性設(shè)置為初始值,再執(zhí)行Load事件過(guò)程。當(dāng)應(yīng)用程序開(kāi)始運(yùn)行時(shí),Visual Basic 自動(dòng)加載并顯示應(yīng)用

11、程序的啟動(dòng)窗體。23 2. 窗體Unload事件 從內(nèi)存中卸載窗體。關(guān)閉窗體時(shí)觸發(fā)的事件。Activate事件與Deactivate事件 每當(dāng)一個(gè)窗體變成活動(dòng)窗體時(shí),就會(huì)產(chǎn)生一個(gè)Activate事件;當(dāng)另一個(gè)窗體或應(yīng)用程序被激活時(shí),就會(huì)產(chǎn)生Deactivate事件。Paint事件 當(dāng)窗體被移動(dòng)或放大時(shí),或窗口移動(dòng)時(shí)覆蓋了一個(gè)窗體時(shí),觸法該事件。24 3. 控件VB中的控件通常分為3種類型:(1) 內(nèi)部控件:在默認(rèn)狀態(tài)下工具箱中顯示的控件都是內(nèi)部控件,不可從工具箱中刪除。如命令按鈕、單項(xiàng)選擇按鈕、復(fù)選框等控件。 (2) ActiveX控件:這類控件單獨(dú)保存在.ocx類型的文件中,其中包括各種版本

12、VB提供的控件,另外也有許多軟件廠商提供的ActiveX控件。 (3) 可插入的對(duì)象。25 3. 控件內(nèi)部控件工具箱里列出的是內(nèi)部控件控件的命名 Name屬性值。為了能見(jiàn)名知義,通常用3個(gè)小寫(xiě)字母作為對(duì)象的Name屬性的前綴控件值 用“控件.屬性的格式設(shè)置一個(gè)控件的屬性值 如:Text1.Text=“hello!26 4. 控件的畫(huà)法和根本操作控件的畫(huà)法單擊工具箱中控件按鈕,在窗體上拖動(dòng)鼠標(biāo)畫(huà)出控件。雙擊工具箱中控件按鈕,即可在窗體的中央畫(huà)出控件。 控件的根本操作控件的縮放和移動(dòng)直接使用鼠標(biāo)拖動(dòng)控件到需要的地方。利用鼠標(biāo)指針對(duì)準(zhǔn)控件的選中標(biāo)志8個(gè)小方塊出現(xiàn)雙向箭頭時(shí),可以改變控件的大小。在屬性

13、窗口修改某些屬性來(lái)改變控件的大小和位置。與窗體和控件大小及位置有關(guān)的控件屬性有:Left、Top、Width及Height。27 4. 控件的畫(huà)法和根本操作控件的根本操作控件的復(fù)制與刪除在窗體上,控件的復(fù)制和刪除操作同Windows環(huán)境下文件的操作相同。 (1) 選中控件,單擊工具欄上的“復(fù)制按鈕將控件復(fù)制到剪貼板中。 (2) 單擊“粘貼按鈕將控件粘貼到窗體的左上角。在“是否創(chuàng)立控件數(shù)組對(duì)話框,單擊“否。刪除活動(dòng)控件,只需選中控件后按Del鍵或單擊工具欄上的“刪除按鈕。 28 4. 控件的畫(huà)法和根本操作控件的根本操作選定多個(gè)控件 (1)在窗體的空白區(qū)域利用鼠標(biāo)左鍵拉出一個(gè)矩形框,將需要選中的控

14、件圈上即可選定多個(gè)控件。 (2)先按住Shift鍵,再用鼠標(biāo)單擊所要選中的控件。 通過(guò)屬性窗口改變對(duì)象的位置和大小 29 5. 文本控件標(biāo)簽根本屬性 Name、Height、Width、Top、Left、Enabled、Visible、Font、ForeColor、BackColor等與窗體的使用相同常用屬性 Caption:用來(lái)改變Label控件中顯示的文本。Alignment:設(shè)置Caption屬性中文本的對(duì)齊方式,共有三種可選值: 0 左對(duì)齊(Left Justify) 1 右對(duì)齊(Right Justify) 2 居中對(duì)齊(Center Justify)30 5. 文本控件BackSt

15、yle:確定標(biāo)簽的背景是否透明。值為0時(shí),表示背景透明,標(biāo)簽后的背景和圖形可見(jiàn);值為1時(shí),表示不透明,標(biāo)簽后的背景和圖形不可見(jiàn)。AutoSize:確定標(biāo)簽是否會(huì)隨標(biāo)題內(nèi)容的多少自動(dòng)變化。值為T(mén)rue,隨Caption內(nèi)容大小自動(dòng)調(diào)整控件本身的大小,且不換行;值為False,表示標(biāo)簽的尺寸不能自動(dòng)調(diào)整,超出尺寸范圍的內(nèi)容不予顯示。 WordWrap:設(shè)置標(biāo)簽的標(biāo)題文字是否能自動(dòng)換行。True-自動(dòng)換行, AutoSize=True False-不自動(dòng)換行31 5. 文本控件32 【例1】在窗體上放置5個(gè)標(biāo)簽,其名稱使用默認(rèn)值Label1Label5,它們的高度與寬度相同,在屬性窗口,按下表設(shè)置它

16、們的屬性 默認(rèn)控件名Name標(biāo)題Caption有關(guān)屬性設(shè)置Label1左對(duì)齊Alignment=0, BorderStyle =1 Label2水平居中Alignment=1,BorderStyle =1Label3自動(dòng)AutoSize=True, WordWarp=False, BorderStyle =1Label4背景白BackColor= &H00FFFFFF&, BorderStyle =0Label5前景紅ForeColor= &H000000FF&, BorderStyle =05. 文本控件事件支持Click(單擊)事件和DblClick(雙擊)事件一般情況不對(duì)它進(jìn)行編程33

17、設(shè)置后各標(biāo)簽的顯示如以下圖5. 文本控件文本框根本屬性 Name、Height、Width、Top、Left、Enabled、Visible、Font、ForeColor、BackColor等與窗體的使用相同常用屬性 Text:顯示的正文內(nèi)容。當(dāng)程序運(yùn)行時(shí),用戶通過(guò)鍵盤(pán)輸入正文內(nèi)容,保存在Text屬性中。文本框沒(méi)有Caption屬性Maxlength: 設(shè)置正文最多字符的個(gè)數(shù), 0任意長(zhǎng)度值。 MultiLine: 是否為多行, False默認(rèn)一行 。34 5. 文本控件ScrollBars: 當(dāng)MultiLine為T(mén)rue時(shí),該屬性才有效。滾動(dòng)條的形式:0-None:無(wú)滾動(dòng)條1-Horizo

18、ntal:水平滾動(dòng)條2-Vertical垂直滾動(dòng)條3-Both水平和垂直滾動(dòng)條Locked:是否可被編輯屬性,F(xiàn)alse表示可編輯。PassWordChar:為了掩蓋文本框中輸入的字符。該屬性的設(shè)置只有在MultiLine設(shè)為 False才有效SelStart:確定在文本框選中文本的起始位置。 第一字符的位置為0。假設(shè)沒(méi)有選擇文本,那么用于返回或設(shè)置文本的插入點(diǎn)位置如果SelStart的值大于文本的長(zhǎng)度,那么SelStart取當(dāng)前文本的長(zhǎng)度:35 5. 文本控件SelLength:設(shè)置或返回文本框中選定的文本字符串長(zhǎng)度字符個(gè)數(shù)。SelText:設(shè)置或返回當(dāng)前選定文本中的文本字符串。事件和方法C

19、hange :當(dāng)改變文本框的Text屬性時(shí)會(huì)引發(fā)該事件。當(dāng)用輸入一個(gè)字符,就會(huì)觸發(fā)一次Change事件GotFocus : 當(dāng)控件獲得焦點(diǎn)時(shí)發(fā)生LostFocus : 當(dāng)控件失去焦點(diǎn)時(shí)發(fā)生SetFocus:文本框最常用的方法,是把光標(biāo)移到指定的文本框?qū)ο笾?。使用形式?對(duì)象.SetFocus36 5. 文本控件37 【例2】在窗體上放置3個(gè)文本框和1個(gè)命令按鈕,用Change事件改變文本框的Text屬性 Private Sub Command1_Click() Text1.Text = Microsoft Visual Basic 6.0End SubPrivate Sub Text1_Cha

20、nge() Text2.Text = LCase(Text1.Text) Text3.Text = UCase(Text1.Text)End Sub運(yùn)行程序后單擊命令按鈕,輸出結(jié)果是:5. 文本控件38 【例3】設(shè)置密碼,在窗體上放置2個(gè)文本框和2個(gè)命令按鈕5. 文本控件39 編寫(xiě)按鈕的事件過(guò)程: Private Sub Command1_Click() If Text1.Text = 123456 Then Text2.Text = OK,come in! Else Text2.Text = 密碼錯(cuò)誤,重新輸入! End IfEnd SubPrivate Sub Command2_Click

21、() Text1.Text = Text2.Text = Text1.SetFocusEnd Sub運(yùn)行程序后單擊命令按鈕,輸出結(jié)果是:6. 圖形控件圖片框和圖象框根本屬性 與窗體屬性相同的屬性。注意對(duì)象名稱不能省略,必須是具體的圖片框或圖象框的名。常用屬性 CurrenX和CurrenY:設(shè)置下一個(gè)輸出的水平或垂直坐標(biāo)。省略為當(dāng)前坐標(biāo) 。 Stretch :為T(mén)rue 時(shí),依據(jù)控件大小調(diào)整圖片的大小,這可能使圖片變形。Picture :用于設(shè)置在圖片框中要顯示的圖像文件屬性窗口中設(shè)置運(yùn)行時(shí)用Loadpicture 函數(shù)裝入 Picture1.Picture=LoadPicture(圖形文件名

22、)40 6. 圖形控件圖形文件的裝入 圖片框和圖象框的區(qū)別圖片框是容器控件,可以作為父控件,而圖像框不能作為父控件。圖片框可以通過(guò)Print 方法接收文本,并可接收由像素組成的圖形,而圖像框不能接收?qǐng)D像框比圖片框占用的內(nèi)存少,顯示速度快。在設(shè)計(jì)階段裝入圖形文件通過(guò)屬性窗口中的Picture 屬性裝入圖形通過(guò)剪貼板把圖形粘貼到圖片框和圖像框中在運(yùn)行階段裝入圖形文件格式為: 對(duì)象.Picture = LoadPicture(“文件名)41 6. 圖形控件42 Private Sub Form_Load() Show Picture1.Print 在圖片框內(nèi)寫(xiě)字和畫(huà)圓 Picture1.Circle

23、(1200, 1000), 600, RGB(0, 0, 255) End Sub【例4】在窗體上放置1個(gè)圖片框,在其中顯示文字和畫(huà)圖編寫(xiě)窗體的事件過(guò)程: 6. 圖形控件直線和形狀根本屬性 與窗體屬性相同的屬性。 Shape控件和Line控件只用于外表裝飾,不支持任何事件。 常用屬性 BorderColor :用來(lái)設(shè)置顏色BorderStyle:用來(lái)確定邊界線的線型,有以下7種0Transparent 透明1Solid ( 缺省值)實(shí)線 _2Dash 虛線3Dot 點(diǎn)線. 4DashDot 點(diǎn)劃線-.-.-.-.-.-. 5DashDotDot 雙點(diǎn)劃線-.-.-.-.6InsideSolid

24、 內(nèi)收實(shí)線 _ 43 6. 圖形控件BorderWidth :用來(lái)設(shè)置形狀邊界線和直線的寬度BackStyle :用于決定形狀是否被指定的顏色填充值為0默認(rèn):表示形狀邊界內(nèi)的區(qū)域是透明的值為1: 該區(qū)域由BackColor 所指定的顏色填充FillColor:用來(lái)定義形狀的內(nèi)部顏色FillStyle:決定了形狀控件內(nèi)部的填充樣式,有8種:0Solid 實(shí)線1Transparent (缺省值) 透明2Horizontal Line 水平直線3Vertical Line 垂直直線4 Upward Diagonal 上斜對(duì)角線5 DownwardDiagonal 下斜對(duì)角線6 Cross 十字線7D

25、iagonalCross 交叉對(duì)角線44 6. 圖形控件Shape :用來(lái)確定所畫(huà)形狀的幾何特性0 VbShapeRectangle (缺省值)矩形 1 VbShapeSquare 正方形2 VbShapeOvel 橢圓形 3VbShapeCircle 圓形4VbShape-RoundedRectangle 圓角矩形5VbShape-RoundedSquare 圓角正方形45 7. 按鈕控件命令按鈕根本屬性 Name、Height、Width、Top、Left、Enabled、Visible、Font等與窗體的使用相同常用屬性 Cancel:邏輯值,設(shè)置為T(mén)ure時(shí),程序運(yùn)行時(shí)按Esc鍵與單擊

26、此命令按鈕的效果相同。注意:在一個(gè)窗體只能有一個(gè)按鈕的Cancel設(shè)置為T(mén)ure Default:邏輯值,設(shè)置為T(mén)rue時(shí),按Enter鍵相當(dāng)于用鼠標(biāo)器單擊了該按鈕。注意:在一個(gè)窗體只能有一個(gè)按鈕的Default設(shè)置為T(mén)ure46 7. 按鈕控件Value: 檢查該按鈕是否按下. 該屬性在設(shè)計(jì)時(shí)無(wú)效Picture : 按鈕可顯示圖片文件(.bmp和.Ico),只有當(dāng)Style屬性值設(shè) 為1時(shí)有效Style : 確定顯示的形式. 0 只能顯示文字, 1 文字、圖形均可事件最常用的事件是Click(單擊)事件不支持DblClick(雙擊)事件47 7. 按鈕控件48 【例5】編寫(xiě)程序,模擬交通信號(hào)

27、燈的切換。在窗體上畫(huà)紅、黃、綠3個(gè)圖像框和2個(gè)命令按鈕,按下表設(shè)置它們的屬性 7. 按鈕控件49 編寫(xiě)事件過(guò)程:Private Sub Form_Load() image2.Visible = False image3.Visible = FalseEnd Sub Private Sub Command1_Click() If image1.Visible = True Then image1.Visible = False image2.Visible = True ElseIf image2.Visible = True Then image2.Visible = False image3

28、.Visible = True Else image3.Visible = False image1.Visible = True End IfEnd SubPrivate Sub Command2_Click() EndEnd Sub運(yùn)行程序后單擊命令按鈕,輸出結(jié)果是:第3章 建立簡(jiǎn)單VB應(yīng)用程序沈陽(yáng)理工大學(xué)應(yīng)用技術(shù)學(xué)院0.本章內(nèi)容語(yǔ)句編寫(xiě)簡(jiǎn)單的VB應(yīng)用程序程序的保存、裝入和運(yùn)行VB 應(yīng)用程序的結(jié)構(gòu)與工作方式51 1. 語(yǔ)句語(yǔ)句的書(shū)寫(xiě)規(guī)那么自動(dòng)語(yǔ)法檢查如果設(shè)置了“自動(dòng)語(yǔ)法檢測(cè)選項(xiàng)卡,那么在輸入語(yǔ)句的過(guò)程中,VB將自動(dòng)對(duì)輸入的內(nèi)容進(jìn)行語(yǔ)法檢查。格式化處理VB會(huì)按約定對(duì)語(yǔ)句進(jìn)行簡(jiǎn)單的格式化處理,

29、例如關(guān)鍵字、函數(shù)的第一字母自動(dòng)變?yōu)榇髮?xiě),運(yùn)算符前后加空格等。復(fù)合語(yǔ)句行每個(gè)語(yǔ)句以回車鍵結(jié)束。VB允許使用復(fù)合語(yǔ)句行,把幾個(gè)語(yǔ)句放在一個(gè)語(yǔ)句行中,語(yǔ)句之間用冒號(hào)“:隔開(kāi)。語(yǔ)句的續(xù)行當(dāng)一條語(yǔ)句很長(zhǎng)時(shí),用續(xù)行符“_將一個(gè)較長(zhǎng)的語(yǔ)句分為多個(gè)程序行。52 1. 語(yǔ)句賦值語(yǔ)句是把指定的值賦給某個(gè)變量或帶有屬性的對(duì)象。格式:Let目標(biāo)操作符=源操作符源操作符為: 變量簡(jiǎn)單或下標(biāo)變量,表達(dá)式數(shù)值、字符串或邏輯表達(dá)式,常量,帶有屬性的對(duì)象目標(biāo)操作符:變量或帶屬性的對(duì)象 “=“ 稱為賦值符號(hào),有時(shí)序性和方向性功能:把“源操作符的值賦給“目標(biāo)操作符說(shuō)明:表達(dá)式中的變量必須是賦過(guò)值的,否那么變量的初值自動(dòng)取零值(變長(zhǎng)

30、字符串變量取空字符)。例如: a= 1 c= a + b + 3 b未賦過(guò)值,為0 執(zhí)行后,c 值為 453 1. 語(yǔ)句利用賦值語(yǔ)句,可以改變變量的值,因此,同一變量在不同時(shí)刻可以取不同的值。Private Sub Form_Click() a = 3 : Print *A= & a a = 7 : Print *A= & a a = a * 2 + 3 : Print *A= & a End Sub 運(yùn)行程序后單擊窗體,輸出的結(jié)果如下: *A=3 *A=7 *A=17賦值語(yǔ)句跟數(shù)學(xué)中等式具有不同的含意,例如賦值語(yǔ)句x=x+1,表示把變量x的當(dāng)前值加上1后再將結(jié)果賦給變量 “先讀后寫(xiě):讀出x的

31、內(nèi)容 加1寫(xiě)回x覆蓋原有內(nèi)容54 1. 語(yǔ)句注釋語(yǔ)句在程序的適應(yīng)位置加上必要的注釋,可以提高程序的可讀性。格式:Rem 注釋內(nèi)容 或 注釋內(nèi)容功能:在程序中參加注釋內(nèi)容,以便于對(duì)程序的理解。例如: Rem 交換變量a和b的值 c = a c為臨時(shí)單元 a = b b = c55 1. 語(yǔ)句說(shuō)明:非執(zhí)行語(yǔ)句,起注釋作用,不編譯在程序清單中,但被完整列出。 任何字符都可作注釋內(nèi)容。通常放在過(guò)程、模塊開(kāi)頭做標(biāo)題,在執(zhí)行語(yǔ)句單行或復(fù)合語(yǔ)句行的后面,必須是最后一個(gè)語(yǔ)句。不能放在續(xù)行符-后面。如果使用關(guān)鍵字Rem,在Rem和注釋內(nèi)容之間要加一個(gè)空格。 在其他語(yǔ)句后使用Rem關(guān)鍵字,必須使用冒號(hào)(:)與前面

32、的語(yǔ)句隔開(kāi)。注釋符(單引號(hào))可以直接寫(xiě)在其他語(yǔ)句后面。56 1. 語(yǔ)句暫停語(yǔ)句Stop格式: Stop 功能:暫停程序的運(yùn)行??捎糜谡{(diào)試程序設(shè)置斷點(diǎn)也可以通過(guò)單擊工具欄上的“中斷按鈕來(lái)實(shí)現(xiàn)使用 Ctrl + Break組合鍵 用于暫停程序的執(zhí)行,執(zhí)行時(shí)將自動(dòng)翻開(kāi)立即窗口。程序調(diào)試結(jié)束后,生成可執(zhí)行文件前應(yīng)刪去所有的Stop語(yǔ)句。57 1. 語(yǔ)句結(jié)束語(yǔ)句End格式: End 功能:結(jié)束程序的運(yùn)行。 也可以單擊工具欄上的“結(jié)束按鈕。 End Sub 結(jié)束一個(gè)Sub過(guò)程 End Function 結(jié)束一個(gè)Function過(guò)程 End If 結(jié)束一個(gè)If 語(yǔ)句塊 End Type 結(jié)束記錄類型的定義

33、End Select 結(jié)束情況語(yǔ)句58 2. 編寫(xiě)簡(jiǎn)單的VB應(yīng)用程序設(shè)計(jì)VB應(yīng)用程序的步驟建立用戶界面的對(duì)象窗體設(shè)置對(duì)象的屬性值編寫(xiě)程序代碼進(jìn)入事件過(guò)程(翻開(kāi)“代碼窗口的)4種方法雙擊已建好的控件;執(zhí)行“視圖菜單的“代碼窗口命令;按F7鍵;單擊“工程資源管理器窗口的“查看代碼按鈕。 59 2. 編寫(xiě)簡(jiǎn)單的VB應(yīng)用程序【例1】在窗體上畫(huà)3個(gè)命令按鈕和1個(gè)文本框,窗體標(biāo)題設(shè)置為“VB程序設(shè)計(jì)例如 ,3個(gè)命令按鈕標(biāo)題分別設(shè)置為“顯示、“去除、“結(jié)束,文本框內(nèi)容設(shè)置為空白。程序運(yùn)行后,單擊第1個(gè)命令按鈕,文本框里顯示“歡送使用VB;單擊第2個(gè)命令按鈕,去除文本框內(nèi)容;單擊第3個(gè)命令按鈕,結(jié)束程序。設(shè)計(jì)

34、步驟如下:1. 建立用戶界面60 2. 編寫(xiě)簡(jiǎn)單的VB應(yīng)用程序2. 設(shè)置對(duì)象屬性 在默認(rèn)在“屬性窗口中設(shè)置以下對(duì)象的屬性:設(shè)置窗體Form1的Caption(標(biāo)題名)屬性為“VB程序設(shè)計(jì)例如 設(shè)置文本框Text1的Text(文本內(nèi)容)屬性為空設(shè)置按鈕Command1 的Caption屬性為“顯示設(shè)置按鈕Command2 的Caption屬性為“去除設(shè)置按鈕Command3 的Caption屬性為“結(jié)束。 61 2. 編寫(xiě)簡(jiǎn)單的VB應(yīng)用程序3. 編寫(xiě)程序代碼 62 2. 編寫(xiě)簡(jiǎn)單的VB應(yīng)用程序【例2】設(shè)計(jì)一個(gè)應(yīng)用程序,由用戶輸入正方形的邊長(zhǎng),計(jì)算并輸出正方形的面積 分析:要?jiǎng)?chuàng)立的應(yīng)用程序用戶界面

35、如圖:63 文本框Text1文本框Text2命令按鈕Command1命令按鈕Command2標(biāo)簽Label1標(biāo)簽Label2窗體Form12. 編寫(xiě)簡(jiǎn)單的VB應(yīng)用程序窗體上含有兩個(gè)標(biāo)簽、兩個(gè)文本框和兩個(gè)命令按鈕兩個(gè)標(biāo)簽分別用于顯示文字“邊長(zhǎng)和“面積兩個(gè)文本框用于輸入數(shù)據(jù)和顯示計(jì)算結(jié)果程序功能要求: 運(yùn)行時(shí),用戶在“邊長(zhǎng)文本框中輸入某一個(gè)數(shù),當(dāng)單擊“計(jì)算按鈕時(shí),那么在“面積文本框中顯示該數(shù)的平方數(shù)。單擊“結(jié)束按鈕,那么結(jié)束程序的運(yùn)行。64 2. 編寫(xiě)簡(jiǎn)單的VB應(yīng)用程序設(shè)計(jì)步驟如下: 1. 建立用戶界面 在默認(rèn)窗體Form1上添加控件,以構(gòu)建用戶界面 在Form1窗體上添加以下控件:標(biāo)簽Label

36、1:用于顯示文字“邊長(zhǎng); 標(biāo)簽Label2:用于顯示文字“面積。文本框Text1:用于邊長(zhǎng)數(shù);文本框Text2:用于顯示計(jì)算結(jié)果(平方數(shù))。命令按鈕Command1:用于計(jì)算輸入數(shù)的平方,并把結(jié)果顯示在文本框Text2中;命令按鈕Command2:用于結(jié)束應(yīng)用程序的運(yùn)行。65 2. 編寫(xiě)簡(jiǎn)單的VB應(yīng)用程序2. 設(shè)置對(duì)象屬性 在默認(rèn)在“屬性窗口中設(shè)置以下對(duì)象的屬性:設(shè)置窗體Form1的Caption(標(biāo)題名)屬性為“計(jì)算正方形的面積 。設(shè)置標(biāo)簽Label1的Caption屬性為“邊長(zhǎng)。設(shè)置標(biāo)簽Label2的Caption屬性為“面積。設(shè)置文本框Text1的Text(文本內(nèi)容)屬性為空。設(shè)置文本框

37、Text2的Text屬性為空。 設(shè)置按鈕Command1 的Caption屬性為“計(jì)算。設(shè)置按鈕Command2 的Caption屬性為“結(jié)束。其他屬性采用默認(rèn)值 66 2. 編寫(xiě)簡(jiǎn)單的VB應(yīng)用程序3. 編寫(xiě)程序代碼,建立事件過(guò)程 程序說(shuō)明:Dim語(yǔ)句; 數(shù)據(jù)類型Single(單精度); Val函數(shù); 語(yǔ)句“Text2.Text=x*x的作用67 3. 程序的保存、裝入和運(yùn)行程序的保存保存窗體文件 窗體文件 .frm保存工程文件工程文件 .vbp程序的裝入 就是裝入工程文件 程序的運(yùn)行 解釋運(yùn)行 生成可執(zhí)行文件執(zhí)行“文件菜單中的“生成exe命令 68 4. VB 應(yīng)用程序的結(jié)構(gòu)與工作方式構(gòu)成:

38、 3類模塊 窗體模塊(.frm) 標(biāo)準(zhǔn)模塊(.bas) 類模塊(.cls) 69 5. 小測(cè)驗(yàn)工程的管理工程中的文件常用 工程文件 .vbp 窗體文件 .frm 標(biāo)準(zhǔn)模塊文件 .bas創(chuàng)立、翻開(kāi)和保存工程創(chuàng)立工程 ;翻開(kāi)工程;保存工程;關(guān)閉工程 添加、刪除和保存文件 添加文件 、刪除文件和保存文件生成可執(zhí)行文件 兩種運(yùn)行程序的方式:解釋方式;編譯方式 執(zhí)行“文件菜單中的“生成exe命令 70 第4章 數(shù)據(jù)類型、運(yùn)算符與表達(dá)式沈陽(yáng)理工大學(xué)應(yīng)用技術(shù)學(xué)院0.本章內(nèi)容 根本數(shù)據(jù)類型 常量與變量 變量的作用域 常用內(nèi)部函數(shù) 運(yùn)算符與表達(dá)式 72 1.根本數(shù)據(jù)類型 數(shù)值型 73 字符串(String) 數(shù)

39、值數(shù)據(jù)類型 貨幣(Currency) 變體(Variant) 其他 整型數(shù) 整數(shù)Integer) 長(zhǎng)整數(shù)(Long)浮點(diǎn)數(shù) 單精度(Single) 雙精度(Double)1.根本數(shù)據(jù)類型 字符串用雙引號(hào)括起來(lái)的一串字符。例如: “Canton 1+2=? Good Morning “ 在VB中,分變長(zhǎng)字符串(長(zhǎng)度不固定)和定長(zhǎng)字符串(長(zhǎng)度固定)二種。定長(zhǎng)字符串定義變量格式為: String * 常數(shù) 如:Dim name as String * 1074 1.根本數(shù)據(jù)類型 數(shù)值整型數(shù) 不帶小數(shù)局部的數(shù),表示正整數(shù)、負(fù)整數(shù)和零整數(shù)Integer): 2個(gè)字節(jié)長(zhǎng)整數(shù) (Long) :4個(gè)字節(jié)浮點(diǎn)數(shù)

40、 表示帶有小數(shù)局部的數(shù)單精度數(shù)(Single): 4個(gè)字節(jié)雙精度數(shù)(Double): 8個(gè)字節(jié)75 1.根本數(shù)據(jù)類型 貨幣專門(mén)為處理貨幣而設(shè)計(jì)的數(shù)據(jù)類型它可最多保存小數(shù)點(diǎn)右邊4位和小數(shù)點(diǎn)左邊15位變體是一種可變的數(shù)據(jù)類型,可以存放任何類型的數(shù)據(jù) 包括數(shù)值、字符串、日期/時(shí)間等其他數(shù)據(jù)類型字節(jié)Byte):1個(gè)字節(jié)布爾Boolean): 2個(gè)字節(jié)日期Date): 8個(gè)字節(jié) 用兩個(gè)“#符號(hào)把日期和時(shí)間的值括起來(lái)如:#08/20/2001#、#2001-08-20#對(duì)象Object): 4個(gè)字節(jié) 可用來(lái)表示應(yīng)用程序中的對(duì)象 76 2.常量和變量 常量文字常量字符串常量 例如: “Visual Basi

41、c ,“ 3+5 等數(shù)值常量 有4種:整型數(shù),長(zhǎng)整型數(shù)、貨幣型數(shù)和浮點(diǎn)數(shù)例如:123,-263,235.987E-8 等布爾常量 (邏輯常量 有Ture和False 兩個(gè)值日期常量 例如:#05/16/2007#符號(hào)常量 格式: PublicPrivate Const 常量名 As 數(shù)據(jù)類型=表達(dá)式 例如: Const PI=3.14159 As Single 77 2.常量和變量系統(tǒng)常量VB提供可在程序中直接使用 78 2.常量和變量 變量變量的命名規(guī)那么變量名必須以字母開(kāi)頭;只能由字母、數(shù)字和下劃線組成。不能含有小數(shù)點(diǎn)、空格等字符;字符個(gè)數(shù)不得超過(guò)255個(gè);不能使用VB的關(guān)鍵字(如語(yǔ)句名、

42、函數(shù)名等)。例如,Print、Sub、End等不區(qū)分變量名中字母的大小寫(xiě)79 2.常量和變量變量的命名的本卷須知要見(jiàn)名知義。比方用sum或s代表求和。盡可能簡(jiǎn)單明了。 變量名不能與過(guò)程名和符號(hào)常量名相同。盡量采用VB建議的變量名前綴或后綴的約定來(lái)命名。如:intMax。VB不區(qū)分變量名和其他名字中字母的大小寫(xiě)。為便于閱讀,每個(gè)單詞開(kāi)頭的字母一般用大寫(xiě),例如PrintText。 80 2.常量和變量變量的類型和定義 用類型說(shuō)明符來(lái)標(biāo)識(shí) 放在變量名的尾部。其中 %表示整型;&表示長(zhǎng)整型;!表示單精度型;#表示雙精度型;表示貨幣型;$表示字符串型。 例如:Total% Amount# Lname$定

43、義變量時(shí)指定類型 格式:Declare 變量名 As 類型 其中 “Declare可以是 Dim、Static、Public或Private “As是關(guān)鍵字 “類型是根本數(shù)據(jù)類型或用戶定義類型81 2.常量和變量 說(shuō)明:Dim:用于標(biāo)準(zhǔn)模塊、窗體模塊或過(guò)程中定義變量或數(shù)組。每次引用時(shí)其值會(huì)被重新設(shè)置 例如: Dim sum As Integer 把sum定義為整型變量 Static:定義靜態(tài)變量和數(shù)組變量。每次引用時(shí)其值會(huì)繼續(xù)保存 Public:用于標(biāo)準(zhǔn)模塊中定義全局變量或數(shù)組 82 3.變量的作用域 局部變量與全局變量 局部變量 在過(guò)程內(nèi)定義的變量模塊變量窗體變量和標(biāo)準(zhǔn)模塊變量全局變量83

44、3.變量的作用域 84 名稱作用域聲明位置使用詞句局部變量過(guò)程過(guò)程中Dim或Static模塊變量窗體模塊或標(biāo)準(zhǔn)模塊模塊的聲明部分Dim或Private全局變量整個(gè)應(yīng)用程序標(biāo)準(zhǔn)模塊的聲明部分Public或Global3.變量的作用域 默認(rèn)聲明 就是向程序說(shuō)明要使用的變量聲明變量(顯式聲明)用Dim、Public、Private或Static語(yǔ)句來(lái)聲明變量 例如:Dim sum As Integer 把sum定義為整型變量隱式聲明不加說(shuō)明就直接使用變量,此時(shí)默認(rèn)的變量類型為變體類型(Variant)也允許使用類型符來(lái)聲明變量的類型,如Num%,Sum!85 4.常用內(nèi)部函數(shù) 轉(zhuǎn)換函數(shù) 用于數(shù)據(jù)類型

45、的轉(zhuǎn)換例如:Val(A12) 的值為 0 Val(12A12) 的值為 12【例1】使用轉(zhuǎn)換函數(shù)的例如(留給學(xué)生分析) 86 Private Sub Form_Click() x = 123 y = 123 a = Chr(Asc(x) + 5) b = Str(Val(x) + 5) c = Val(Str(y) + 5) Print a,b, c End Sub運(yùn)行程序后單擊窗體,輸出結(jié)果如下: 6 128 1235注: 檢驗(yàn)函數(shù)操作可在立即窗口(CTL+G)中用直接方式執(zhí)行4.常用內(nèi)部函數(shù) 數(shù)學(xué)函數(shù)三角函數(shù)的自變量單位是弧度 如Sin47應(yīng)寫(xiě)成 Sin(47*3.14159/180)函數(shù)

46、Int是求小于或等于x的最大整數(shù) 例如 Int(2.7)=2, Int(-2.5)=-3當(dāng)x0時(shí)就直接舍去小數(shù),假設(shè)x0那么舍去小數(shù)位后再減1 利用Int函數(shù)可以對(duì)數(shù)據(jù)進(jìn)行四舍五入。對(duì)一個(gè)正數(shù)x可采用如下式子: Int(x+0.5)用Rnd函數(shù)返回隨機(jī)數(shù),先用Randomize語(yǔ)句來(lái)初始化生成a, b區(qū)間范圍內(nèi)的隨機(jī)整數(shù),可以采用 Int(b-a+1)*Rnd + a)87 4.常用內(nèi)部函數(shù) 【例2】通過(guò)隨機(jī)函數(shù)產(chǎn)生2個(gè)兩位正整數(shù),求和并顯示出來(lái) 編寫(xiě)的窗體單擊事件過(guò)程代碼如下:88 再次運(yùn)行程序,單擊窗體后輸出另一組結(jié)果是: 產(chǎn)生的兩個(gè)隨機(jī)數(shù):18 37 和數(shù):55Private Sub F

47、orm_Click() Dim a As Integer, b As Integer, c As Integer Randomize 初始化隨機(jī)數(shù)生成器 a = Int(90 * Rnd + 10) 產(chǎn)生10,99區(qū)間內(nèi)的隨機(jī)整數(shù) b = Int(90 * Rnd + 10) c = a + b 求兩數(shù)之和 Print 產(chǎn)生的兩個(gè)隨機(jī)數(shù): ; a, b Print 和數(shù): ; c End Sub 運(yùn)行程序,單擊窗體后輸出結(jié)果是: 產(chǎn)生的兩個(gè)隨機(jī)數(shù):56 71 和數(shù):1274.常用內(nèi)部函數(shù) 日期與時(shí)間函數(shù)提供某個(gè)事件何時(shí)發(fā)生及持續(xù)時(shí)間長(zhǎng)短的信息【例3】使用日期/時(shí)間函數(shù)例如(留給學(xué)生分析)89

48、Private Sub Form_Click() x = #1/1/2021# a = x - Date b = Weekday(x) c = Year(Date) d = Month(Date) e = Hour(Time) f = Minute(Time) Print 現(xiàn)在距離2021奧運(yùn)會(huì)還有: ; a; 天 Print 2021奧運(yùn)會(huì)是:星期; b-1 Print 本月份是:; c; 年; d; 月 Print 現(xiàn)在是:; e; 時(shí); f; 分 End Sub運(yùn)行程序后單擊窗體,輸出結(jié)果如下: 現(xiàn)在距離2021奧運(yùn)會(huì)還有:184天 2021奧運(yùn)會(huì)是:星期1 本月份是:2007年2月 現(xiàn)

49、在是:16時(shí)27分4.常用內(nèi)部函數(shù) 字符串函數(shù)刪除空白字符函數(shù) LTrim$(S) RTrim$(S) Trim$(S)字符串截取函數(shù) Left$(S,n) Right$(S,n) Mid$(S,p,n)字符串長(zhǎng)度測(cè)試函數(shù) Len(S)90 4.常用內(nèi)部函數(shù) String$函數(shù) String$(n,S)空格函數(shù) Space$(n)字符串匹配函數(shù) Instr(f, 字符串1,字符串2,k)字母大小寫(xiě)轉(zhuǎn)換 Ucase$(S) Lcase$(S)插入字符串語(yǔ)句Mid$ Mid(字符串, p,n) = 子字符串91 4.常用內(nèi)部函數(shù) 【例4】使用字符串函數(shù)例如 先從字符串a(chǎn)中找出某個(gè)指定字符(本例為空

50、格),再以此字符為界拆分成兩個(gè)字符串。92 Private Sub Form_Click() Dim a As String, b As String, c As String, n As Integer a = VisualFoxPro 表示空格 n = InStr(a, ) 查找空格位置 b = Left(a, n - 1) 取左邊局部 c = Mid(a, n + 1) 取右邊局部 Print b 顯示左邊局部 Print c 顯示右邊局部End Sub運(yùn)行程序后單擊窗體,輸出結(jié)果如下: VisualFoxPro4.常用內(nèi)部函數(shù) Shell函數(shù)調(diào)用各種應(yīng)用程序 shell命令字符串,窗口

51、類型 命令字符串:可執(zhí)行文件的名字 窗口類型:6種93 5.運(yùn)算符與表達(dá)式 算術(shù)運(yùn)算符 指數(shù)運(yùn)算 例如: 82=64浮點(diǎn)數(shù)除法與整數(shù)除法 / 和 的區(qū)別:/用于普通除法; 用于整數(shù)除法,如果參加運(yùn)算的數(shù)據(jù)含有小數(shù),首先將它們四舍五入,再進(jìn)行運(yùn)算,結(jié)果去掉小數(shù)局部。 例如: 1/2=0.5,12=0 ,25.58 6.91=3取模運(yùn)算 用來(lái)求整型數(shù)除法的余數(shù) 例如: 9 Mod 7 結(jié)果為 2 , 25.58 Mod 6.91結(jié)果為 5 94 5.運(yùn)算符與表達(dá)式 算術(shù)運(yùn)算符的優(yōu)先級(jí) (乘方) -(求負(fù)) */ Mod +-同級(jí)左到右95 5.運(yùn)算符與表達(dá)式 字符串連接 連接符有兩個(gè):&和+都是將

52、兩個(gè)字符串連接起來(lái),結(jié)果是一個(gè)字符串 & 專門(mén)字符串連接符,+ 可作加法連接符例如: “計(jì)算機(jī)& “網(wǎng)絡(luò)的結(jié)果是“計(jì)算機(jī)網(wǎng)絡(luò) “123 + “45的結(jié)果是:“12345 123 & “ABC 的結(jié)果是:“123ABC 96 5.運(yùn)算符與表達(dá)式 關(guān)系運(yùn)算符與邏輯運(yùn)算符 關(guān)系運(yùn)算符用一個(gè)比較運(yùn)算符把兩個(gè)表達(dá)式(如算術(shù)表達(dá)式)連接起來(lái)的式子。 值為T(mén)rue(真)和False(假)8種: = = Like Is數(shù)值型、日期型看成yyyymmdd位整數(shù)按數(shù)值大小比較。字符型數(shù)據(jù)按其ASCII碼比較。漢字字符大于西文字符例:Print 5 3 True Print #3/1/2003# #3/11/200

53、3# Flase Print abc = ABC“ True97 5.運(yùn)算符與表達(dá)式 邏輯運(yùn)算符 用邏輯運(yùn)算符把關(guān)系表達(dá)式或邏輯值連接起來(lái)的式子6種按優(yōu)先級(jí):Not(非) 、And(與)、Or(或)、Xor(異或)、Eqv (等價(jià)) 、Imp(蘊(yùn)含)例: Not (23) 2=3 And 45+1 兩個(gè)關(guān)系表達(dá)式為真,結(jié)果為真 3 = 3 Or 53 “3=3為真,結(jié)果為真98 5.運(yùn)算符與表達(dá)式 字符串表達(dá)式與日期表達(dá)式 字符串表達(dá)式 用連接符&將字符串常量、字符串變量、字符串函數(shù)連接起來(lái)的式子日期表達(dá)式: 用運(yùn)算符(+或-)將算術(shù)表達(dá)式、日期型常量、日期型變量和函數(shù)連接起來(lái)的式子兩個(gè)日期型

54、數(shù)據(jù)相減,其結(jié)果是一個(gè)數(shù)值型數(shù)據(jù)(相差的天數(shù))。 例如:#8/8/2001# - #6/3/2001# 的結(jié)果為:66日期型數(shù)據(jù)加上天數(shù),其結(jié)果為一個(gè)日期型數(shù)據(jù)。 例如:#12/1/2000#+31 的結(jié)果為:#01/01/2001#日期型數(shù)據(jù)減去天數(shù),其結(jié)果為一個(gè)日期型數(shù)據(jù)。 例如:#12/1/2000#-32 的結(jié)果為:#10/30/2000#99 5.運(yùn)算符與表達(dá)式 表達(dá)式的執(zhí)行順序 算術(shù)運(yùn)算優(yōu)先于關(guān)系運(yùn)算,關(guān)系運(yùn)算優(yōu)先于邏輯運(yùn)算。首先進(jìn)行函數(shù)運(yùn)算接著進(jìn)行算術(shù)運(yùn)算,其次序?yàn)椋?冪() 取負(fù)(-) 乘、浮點(diǎn)除(*、/) 整除() 取模(Mod) 加法和減法(+、-) 字符串連接(&)然后進(jìn)

55、行關(guān)系運(yùn)算 相等(=)、不等()、小于()、小于等于(=)(注:6 個(gè)運(yùn)算符同級(jí)) 最后進(jìn)行邏輯運(yùn)算 非(Not) 與(And) 或(Or) 異或(Xor) 等價(jià)(Eqv) 蘊(yùn)涵(Imp)100 5.運(yùn)算符與表達(dá)式 【例5】判斷某一年是否閏年。判斷條件:年號(hào)(y)能被4整除,但不能被100整除;或者能被400整除用邏輯表達(dá)式來(lái)表示這個(gè)條件,寫(xiě)成: (y Mod 4=0 And y Mod 1000) Or (y Mod 400=0)也可寫(xiě)成:(Int(y/4)=y/4 And Int(y/100)y/100) Or Int(y/400)=y/400)101 第5章 數(shù)據(jù)輸入輸出沈陽(yáng)理工大學(xué)應(yīng)用

56、技術(shù)學(xué)院0.本章內(nèi)容使用Print方法輸出數(shù)據(jù)使用InputBox函數(shù)輸入數(shù)據(jù) MsgBox函數(shù)和 MsgBox語(yǔ)句字形 打印機(jī)輸出 103 1.使用Print方法輸出數(shù)據(jù)Print方法格式:對(duì)象名.Print 表達(dá)式列表說(shuō)明:使用的對(duì)象可以是窗體、圖片框或打印機(jī) Print “程序設(shè)計(jì) 在當(dāng)前窗體上輸出 Picture1.Print “程序設(shè)計(jì) 在圖片框上輸出表達(dá)式列表是一個(gè)或多個(gè)表達(dá)式,如果省略,那么輸出一個(gè)空行有計(jì)算和輸出雙重功能,先計(jì)算后輸出。輸出數(shù)值數(shù)據(jù)時(shí),前面有一個(gè)符號(hào)位(正號(hào)以空格表示),后面留有一個(gè)空格;輸出字符串時(shí),前后不留空格。104 1.使用Print方法輸出數(shù)據(jù)【例1】

57、 Private Sub Form_Click() a = 2 b = VB Print 50 * a 計(jì)算并輸出表達(dá)式的值 Print b 輸出變量的值 Print 輸出空行 Print The Total is 輸出字符串常量 End Sub105 運(yùn)行結(jié)果:1.使用Print方法輸出數(shù)據(jù)當(dāng)輸出多個(gè)表達(dá)式時(shí),各表達(dá)式之間用分號(hào)“;(緊湊格式)或逗號(hào)“,(按區(qū)格式)隔開(kāi)。按區(qū)格式(14個(gè)字符位置)假設(shè)語(yǔ)句行末尾有分號(hào)或逗號(hào),那么輸出本行輸出項(xiàng)后不換行106 【例2】 Private Sub Form_Click() a = 3: b = 4 Print a, b, 4 + a, Print

58、2 * b Print a, , b Print a=; a, b=; b End Sub運(yùn)行結(jié)果:1.使用Print方法輸出數(shù)據(jù)【例3】使用Print方法輸出全班學(xué)生的平均年齡。 18歲6人,19歲21人,20歲23人,21歲15人。107 Private Sub Form_Click() Dim a As Integer, b As Integer, c As Integer Dim d As Integer, s As Integer, m As Single a = 6 : b = 21 : c = 23 : d = 15 s = a + b + c + d m = (a * 18 +

59、 b * 19 + c * 20 + d * 21) / s 以下舍入到小數(shù)后1位 Print 平均年齡:; Int(m * 10 + 0.5) / 10End Sub運(yùn)行程序后單擊窗體,輸出結(jié)果是:平均年齡:19.71.使用Print方法輸出數(shù)據(jù)與Print方法有關(guān)的函數(shù)和方法 Tab函數(shù) 函數(shù)格式:Tab(n) 功能:把輸出位置移到第n列,要輸出的內(nèi)容放在Tab函數(shù)后面,并用分號(hào)隔開(kāi)。如: Print Tab(2);學(xué)號(hào);Tab(11);姓名;Tab(21);成績(jī) 輸出結(jié)果是(1個(gè)漢字占2個(gè)位置): 學(xué)號(hào)姓名成績(jī)108 1.使用Print方法輸出數(shù)據(jù)109 程序代碼如下:Private S

60、ub Form_Click() Print Print Tab(15); 學(xué)號(hào); Tab(26); 姓名; Tab(36); 成績(jī) Print Tab(14); String(27, -) 輸出27個(gè)減號(hào)字符“- Print Tab(14); “19011001; Tab(26); 張小三; Tab(36); 57 Print Tab(14); “19011003; Tab(26); 李小四; Tab(36); 69 Print Tab(14); “19011012; Tab(26); 馬小五; Tab(36); 92 Print Tab(14); String(27, -) 輸出27個(gè)減號(hào)字

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論