![VB最好的教程第3章-設(shè)計(jì)順序結(jié)構(gòu)程序_第1頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-11/30/68b67e24-daf3-4a3d-a5f0-991b69c99d42/68b67e24-daf3-4a3d-a5f0-991b69c99d421.gif)
![VB最好的教程第3章-設(shè)計(jì)順序結(jié)構(gòu)程序_第2頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-11/30/68b67e24-daf3-4a3d-a5f0-991b69c99d42/68b67e24-daf3-4a3d-a5f0-991b69c99d422.gif)
![VB最好的教程第3章-設(shè)計(jì)順序結(jié)構(gòu)程序_第3頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-11/30/68b67e24-daf3-4a3d-a5f0-991b69c99d42/68b67e24-daf3-4a3d-a5f0-991b69c99d423.gif)
![VB最好的教程第3章-設(shè)計(jì)順序結(jié)構(gòu)程序_第4頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-11/30/68b67e24-daf3-4a3d-a5f0-991b69c99d42/68b67e24-daf3-4a3d-a5f0-991b69c99d424.gif)
![VB最好的教程第3章-設(shè)計(jì)順序結(jié)構(gòu)程序_第5頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-11/30/68b67e24-daf3-4a3d-a5f0-991b69c99d42/68b67e24-daf3-4a3d-a5f0-991b69c99d425.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、.本章主要介紹本章主要介紹: VB的語(yǔ)法、注釋、書寫風(fēng)格的語(yǔ)法、注釋、書寫風(fēng)格 VB常用的函數(shù)和語(yǔ)句等常用的函數(shù)和語(yǔ)句等 介紹介紹VB程序的順序結(jié)構(gòu)、程序的順序結(jié)構(gòu)、 常用控件:常用控件:命令按鈕、標(biāo)簽、文本框、滾動(dòng)條、定時(shí)命令按鈕、標(biāo)簽、文本框、滾動(dòng)條、定時(shí)器。器。 如何調(diào)試程序,即如何發(fā)現(xiàn)程序中的問題并解如何調(diào)試程序,即如何發(fā)現(xiàn)程序中的問題并解決這些問題。決這些問題。.VB程序設(shè)計(jì)有兩個(gè)部分的工作:程序設(shè)計(jì)有兩個(gè)部分的工作: 一是進(jìn)行界面的設(shè)計(jì)一是進(jìn)行界面的設(shè)計(jì) 二是根據(jù)程序所需要解決的問題,編寫完成解決問二是根據(jù)程序所需要解決的問題,編寫完成解決問題的程序代碼題的程序代碼 一個(gè)程序應(yīng)該具
2、有良好的結(jié)構(gòu),以便于閱讀一個(gè)程序應(yīng)該具有良好的結(jié)構(gòu),以便于閱讀和理解。為了增加程序的易讀性,荷蘭學(xué)者和理解。為了增加程序的易讀性,荷蘭學(xué)者ijkctra提出了結(jié)構(gòu)化程序設(shè)計(jì)的理論,提出了結(jié)構(gòu)化程序設(shè)計(jì)的理論,VB是融合是融合了面向?qū)ο蠛徒Y(jié)構(gòu)化編程兩種思想的一個(gè)編程工了面向?qū)ο蠛徒Y(jié)構(gòu)化編程兩種思想的一個(gè)編程工具。具。. 結(jié)構(gòu)化程序設(shè)計(jì):用三種基本結(jié)構(gòu)作為構(gòu)成程結(jié)構(gòu)化程序設(shè)計(jì):用三種基本結(jié)構(gòu)作為構(gòu)成程序的基本單元序的基本單元 順序結(jié)構(gòu)順序結(jié)構(gòu) 選擇結(jié)構(gòu)選擇結(jié)構(gòu) 循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu) 每個(gè)基本結(jié)構(gòu)具有單入口單出口的特點(diǎn)。每個(gè)基本結(jié)構(gòu)具有單入口單出口的特點(diǎn)。 一般一個(gè)程序由這三種結(jié)構(gòu)結(jié)合而成。一般一個(gè)程序
3、由這三種結(jié)構(gòu)結(jié)合而成。.順序結(jié)構(gòu)的主要特點(diǎn)是:順序結(jié)構(gòu)的主要特點(diǎn)是:按自然順序(即編寫的按自然順序(即編寫的順序)執(zhí)行程序的流程,即順序)執(zhí)行程序的流程,即先執(zhí)行第一句,再執(zhí)行第二先執(zhí)行第一句,再執(zhí)行第二句,一句一句執(zhí)行下去,直句,一句一句執(zhí)行下去,直到執(zhí)行最后一句。到執(zhí)行最后一句。流程如圖所示流程如圖所示:.通過例子,了解順序結(jié)構(gòu)的程序的一般形況通過例子,了解順序結(jié)構(gòu)的程序的一般形況【例【例3-1】求攝氏溫度對(duì)應(yīng)的華氏溫度。如圖。求攝氏溫度對(duì)應(yīng)的華氏溫度。如圖。計(jì)算公式:計(jì)算公式:F=9C/5+32,其中,其中C表示攝氏溫度,表示攝氏溫度,F(xiàn)表示華氏溫度。表示華氏溫度。.對(duì)象:對(duì)象: 2 2
4、個(gè)標(biāo)簽:作提示個(gè)標(biāo)簽:作提示 2 2個(gè)文本框:作輸入和顯示個(gè)文本框:作輸入和顯示 3 3個(gè)命令按鈕控件個(gè)命令按鈕控件 單擊單擊“計(jì)算計(jì)算”按鈕,右文本框內(nèi)顯按鈕,右文本框內(nèi)顯 示出該攝氏溫度對(duì)應(yīng)的華氏溫度。示出該攝氏溫度對(duì)應(yīng)的華氏溫度。 單擊單擊“清除清除”按鈕使得文本框的內(nèi)按鈕使得文本框的內(nèi) 容被清除容被清除 單擊單擊“退出退出”按鈕結(jié)束程序運(yùn)行。按鈕結(jié)束程序運(yùn)行。. 本例使用四個(gè)事件過程:本例使用四個(gè)事件過程:一個(gè)一個(gè)Form_Load()和三個(gè)是命令按鈕的和三個(gè)是命令按鈕的Click事件。事件。 主要屬性設(shè)置主要屬性設(shè)置命令按鈕命令按鈕1:(名稱):(名稱):CmdCalc Captio
5、n:計(jì)算:計(jì)算命令按鈕命令按鈕2:(名稱):(名稱):CmdClear Caption:清除:清除命令按鈕命令按鈕3:(名稱):(名稱):CmdExit Caption:退出:退出標(biāo)簽標(biāo)簽1(Label1):):Caption:攝氏溫度:攝氏溫度標(biāo)簽標(biāo)簽2(Label2):):Caption:華氏溫度:華氏溫度窗體:窗體:Caption:溫度轉(zhuǎn)換:溫度轉(zhuǎn)換.Option Explicit 要求強(qiáng)制聲明變量要求強(qiáng)制聲明變量Private Sub CmdCalc_Click() 計(jì)算計(jì)算 Dim C As Single, F As Single C = Val(Text1.Text) F = 9
6、* C / 5 + 32 Text2.Text = FEnd SubPrivate Sub CmdClear_Click() 清除清除 Text1.Text = Text2.Text = “End SubPrivate Sub CmdExit_Click() 終止程序運(yùn)行終止程序運(yùn)行 EndEnd SubPrivate Sub Form_Load() 啟動(dòng)時(shí),清除文本框內(nèi)容啟動(dòng)時(shí),清除文本框內(nèi)容 Text1.Text = Text2.Text = “End Sub本例每個(gè)事件代碼都依本例每個(gè)事件代碼都依順序執(zhí)行。順序執(zhí)行。. 編寫程序有一定的規(guī)則,這就是語(yǔ)法。如編寫程序有一定的規(guī)則,這就是語(yǔ)法
7、。如數(shù)學(xué)中數(shù)學(xué)中x乘乘y可以寫成可以寫成xy,但在程序中不能。程,但在程序中不能。程序中除了序中除了“ ”所有的內(nèi)的字符串外,其它一律所有的內(nèi)的字符串外,其它一律使用西文符號(hào)。使用西文符號(hào)。如:如: 、 、= =、+ +、- -等都必須等都必須是西文符號(hào)。是西文符號(hào)。.3.3.1 語(yǔ)法符號(hào)語(yǔ)法符號(hào) 在程序設(shè)計(jì)語(yǔ)言中,每一條語(yǔ)句都有語(yǔ)法規(guī)在程序設(shè)計(jì)語(yǔ)言中,每一條語(yǔ)句都有語(yǔ)法規(guī)則。本書在語(yǔ)法描述中,常常使用以下符號(hào):則。本書在語(yǔ)法描述中,常常使用以下符號(hào):1 :表示可選項(xiàng)。表示可選項(xiàng)。2:語(yǔ)句中的基本單位。可以直接給出,也語(yǔ)句中的基本單位??梢灾苯咏o出,也可以用可以用表示。表示。 .3 及其內(nèi)的及
8、其內(nèi)的 | :表示多個(gè)項(xiàng)目,一般只能選:表示多個(gè)項(xiàng)目,一般只能選擇其中一個(gè)。擇其中一個(gè)。4 :表示重復(fù)前面的內(nèi)容。:表示重復(fù)前面的內(nèi)容。如如Print方法格式為:方法格式為:Print 輸出項(xiàng)輸出項(xiàng);|,輸出項(xiàng)輸出項(xiàng);|, Print ;|,;|, 注意:這些只是書寫格式,并不是注意:這些只是書寫格式,并不是VB的語(yǔ)言的語(yǔ)言元素。元素。.3.3.2 注釋注釋 使用注釋記錄編程思路或明確這段程序的目的。使用注釋記錄編程思路或明確這段程序的目的。 使用注釋提高程序的可讀性。使用注釋提高程序的可讀性。 注釋部分不是程序代碼,它不會(huì)被執(zhí)行。注釋部分不是程序代碼,它不會(huì)被執(zhí)行。 注釋不是用得越多越好。注
9、釋不是用得越多越好。 一般針對(duì)主要程序段、主要變量、關(guān)鍵語(yǔ)句等。一般針對(duì)主要程序段、主要變量、關(guān)鍵語(yǔ)句等。.注釋使用有兩種方法:注釋使用有兩種方法:使用西文單引號(hào)使用西文單引號(hào)“” C = Text1.Text C = Text1.Text 將文本框數(shù)據(jù)送入變量將文本框數(shù)據(jù)送入變量C C使用關(guān)鍵字使用關(guān)鍵字Rem Rem 格式:格式:Rem Rem 注釋文字注釋文字Rem Rem 計(jì)算攝氏溫度對(duì)應(yīng)的華氏溫度值。計(jì)算攝氏溫度對(duì)應(yīng)的華氏溫度值。注釋不是用得越多越好注釋不是用得越多越好1.1. 一般針對(duì)主要程序段、主要變量、關(guān)鍵語(yǔ)句等一般針對(duì)主要程序段、主要變量、關(guān)鍵語(yǔ)句等.3.3.3 程序代碼書寫
10、規(guī)則程序代碼書寫規(guī)則1 1續(xù)行續(xù)行 一行中字符數(shù)太多,可以分多行書寫一行中字符數(shù)太多,可以分多行書寫 方法:前一行的末尾要使用續(xù)行符:方法:前一行的末尾要使用續(xù)行符:“ _ _” ” 。如:如:Score = Val (InputBox(請(qǐng)輸入請(qǐng)輸入“計(jì)算機(jī)計(jì)算機(jī)”課程成課程成績(jī)績(jī)(0-100): , _ 輸入成績(jī)輸入成績(jī), 60) 續(xù)行符后面不能加注釋續(xù)行符后面不能加注釋 不要在一個(gè)字符串或關(guān)鍵字的中間截?cái)嘈胁灰谝粋€(gè)字符串或關(guān)鍵字的中間截?cái)嘈?當(dāng)句子不長(zhǎng)時(shí),最好不要用續(xù)行。當(dāng)句子不長(zhǎng)時(shí),最好不要用續(xù)行。.2 2多條語(yǔ)句寫在一行內(nèi)多條語(yǔ)句寫在一行內(nèi) 使用的方法:在各句之間用冒號(hào)使用的方法:在
11、各句之間用冒號(hào)“:”:”分隔。分隔。 如要交換變量如要交換變量A A和和B B中的值,可以使用:中的值,可以使用: T = AT = A: : A = B A = B: : B = TB = T.3 3使用縮進(jìn)格式使用縮進(jìn)格式 為了增加程序的可讀性,代碼應(yīng)采用縮進(jìn)格式。為了增加程序的可讀性,代碼應(yīng)采用縮進(jìn)格式。 它可以反映出代碼的邏輯結(jié)構(gòu)和嵌套關(guān)系。如:它可以反映出代碼的邏輯結(jié)構(gòu)和嵌套關(guān)系。如: . 利用這些語(yǔ)句和函數(shù)可以編寫許多程序。利用這些語(yǔ)句和函數(shù)可以編寫許多程序。 語(yǔ)句是語(yǔ)句是VB程序代碼的組成部分,程序代碼的組成部分, 函數(shù)是函數(shù)是VB語(yǔ)言組成部分的另一種形式語(yǔ)言組成部分的另一種形式
12、 它把一些常用的功能預(yù)先編制好程序它把一些常用的功能預(yù)先編制好程序 以固定的格式提供給用戶使用,以固定的格式提供給用戶使用, 可以大大減少了編程者的代碼設(shè)計(jì)工作??梢源蟠鬁p少了編程者的代碼設(shè)計(jì)工作。.3.4.1 VB的語(yǔ)句的語(yǔ)句 語(yǔ)句獨(dú)立于對(duì)象。語(yǔ)句獨(dú)立于對(duì)象。 語(yǔ)句一般分兩類:語(yǔ)句一般分兩類: 執(zhí)行語(yǔ)句執(zhí)行語(yǔ)句 使計(jì)算機(jī)產(chǎn)生一種特定的操作,如賦值、循環(huán)等。使計(jì)算機(jī)產(chǎn)生一種特定的操作,如賦值、循環(huán)等。 非執(zhí)行語(yǔ)句非執(zhí)行語(yǔ)句 非執(zhí)行語(yǔ)句用來將某些信息通知翻譯系統(tǒng),讓非執(zhí)行語(yǔ)句用來將某些信息通知翻譯系統(tǒng),讓VBVB翻譯系統(tǒng)按它的要求作出處理。如翻譯系統(tǒng)按它的要求作出處理。如DimDim、Const
13、Const、RemRem等。等。. 一個(gè)語(yǔ)句一般包含兩部分:一個(gè)語(yǔ)句一般包含兩部分: 語(yǔ)句定義符部分語(yǔ)句定義符部分規(guī)定了要讓計(jì)算機(jī)干什么。如:規(guī)定了要讓計(jì)算機(jī)干什么。如:DimDim 語(yǔ)句體部分語(yǔ)句體部分指要干的具體內(nèi)容。如:指要干的具體內(nèi)容。如:A As IntegerA As Integer.3.4.2 Stop語(yǔ)句和語(yǔ)句和End語(yǔ)句語(yǔ)句1Stop作用:暫停程序的運(yùn)行。使用格式為:作用:暫停程序的運(yùn)行。使用格式為:Stop 一般用于程序調(diào)試中。一般用于程序調(diào)試中。 如暫停以查看一下前面運(yùn)行的結(jié)果是否正確如暫停以查看一下前面運(yùn)行的結(jié)果是否正確 若要繼續(xù)執(zhí)行,可用工具欄的若要繼續(xù)執(zhí)行,可用工具
14、欄的“繼續(xù)繼續(xù)”按鈕。按鈕。2End作用:終止程序的運(yùn)行。使用格式為:作用:終止程序的運(yùn)行。使用格式為:End 終止程序的運(yùn)行終止程序的運(yùn)行 將卸載所有窗體模塊將卸載所有窗體模塊.3.4.3 什么是函數(shù)什么是函數(shù) 函數(shù)是一些量依賴于另一些量的概括函數(shù)是一些量依賴于另一些量的概括 例如數(shù)學(xué)表達(dá)式例如數(shù)學(xué)表達(dá)式y(tǒng)=Sin(x) y為函數(shù)值為函數(shù)值 x為自變量為自變量 計(jì)算機(jī)中,函數(shù)表示類似于數(shù)學(xué)中的這種關(guān)系計(jì)算機(jī)中,函數(shù)表示類似于數(shù)學(xué)中的這種關(guān)系 計(jì)算機(jī)中,函數(shù)由相對(duì)獨(dú)立的程序代碼實(shí)現(xiàn)的。計(jì)算機(jī)中,函數(shù)由相對(duì)獨(dú)立的程序代碼實(shí)現(xiàn)的。 VB系統(tǒng)提供了一部分函數(shù),稱為系統(tǒng)提供了一部分函數(shù),稱為VB內(nèi)部函
15、數(shù)內(nèi)部函數(shù) 用戶可以直接調(diào)用用戶可以直接調(diào)用VB函數(shù)函數(shù).3.4.4 使用函數(shù)使用函數(shù) VB的內(nèi)部函數(shù)一般分為:的內(nèi)部函數(shù)一般分為: 數(shù)學(xué)函數(shù)、字符串函數(shù)、日期數(shù)學(xué)函數(shù)、字符串函數(shù)、日期/時(shí)間函數(shù)、轉(zhuǎn)換時(shí)間函數(shù)、轉(zhuǎn)換函數(shù)等函數(shù)等 VB內(nèi)部函數(shù)調(diào)用的基本格式是:內(nèi)部函數(shù)調(diào)用的基本格式是: 函數(shù)名函數(shù)名(參數(shù)參數(shù)1, 參數(shù)參數(shù)2, 參數(shù)參數(shù)n) 參數(shù)是函數(shù)的輸入。參數(shù)是函數(shù)的輸入。n=0 一般函數(shù)有一個(gè)返回值,類型可以是數(shù)值型或一般函數(shù)有一個(gè)返回值,類型可以是數(shù)值型或字符型等。字符型等。. 函數(shù)可以被用于表達(dá)式中,如函數(shù)可以被用于表達(dá)式中,如X = -B + Sqr(D) 函數(shù)調(diào)用時(shí),函數(shù)名、參數(shù)
16、個(gè)數(shù)、排列次序和函數(shù)調(diào)用時(shí),函數(shù)名、參數(shù)個(gè)數(shù)、排列次序和數(shù)據(jù)類型應(yīng)與規(guī)定的一致數(shù)據(jù)類型應(yīng)與規(guī)定的一致 函數(shù)的運(yùn)算優(yōu)先級(jí)高于其它運(yùn)算符,低于括號(hào)函數(shù)的運(yùn)算優(yōu)先級(jí)高于其它運(yùn)算符,低于括號(hào)( )。.3.4.5 常用函數(shù)舉例常用函數(shù)舉例(1)求平方根函數(shù))求平方根函數(shù)Sqr。格式:。格式:Sqr(x) 對(duì)對(duì)x開平方根。開平方根。X=0(2)取整函數(shù))取整函數(shù)Int。格式:。格式:Int(x) 求不大于求不大于x的最大整數(shù)。的最大整數(shù)。Int不進(jìn)行四舍五入。如:不進(jìn)行四舍五入。如:Print Int(-3.4), Int(3.8), 顯示:顯示:-4 3(3)取整函數(shù))取整函數(shù)Fix。格式:。格式:Fi
17、x(x) 求求x的整數(shù)部分。的整數(shù)部分。Fix也不進(jìn)行四舍五入。如:也不進(jìn)行四舍五入。如:Print Fix(-3.4), Fix(3.8) , 顯示顯示:-3 3.(4)四舍五入函數(shù))四舍五入函數(shù)Round。 格式格式:Round(x1 ,x2) 省略省略x2(=0)時(shí)表示四舍五入取整。它將時(shí)表示四舍五入取整。它將x1四舍四舍五入保留小數(shù)五入保留小數(shù)x2位。如:位。如:Print Round(12.455, 2), Round(-12.57), Round(12.34, 1)顯示:顯示:12.46 -13 12.3.(5)絕對(duì)值函數(shù))絕對(duì)值函數(shù)Abs。格式:。格式:Abs(x) 該函數(shù)求出該
18、函數(shù)求出x的絕對(duì)值。如:的絕對(duì)值。如:Abs(-25)的值為:的值為:25。(6)正弦函數(shù))正弦函數(shù)Sin。格式:。格式:Sin(x) 該函數(shù)用于求該函數(shù)用于求x的正弦值。參數(shù)一律采用弧度。的正弦值。參數(shù)一律采用弧度。如如sin90的的VB函數(shù)表達(dá)式應(yīng)為函數(shù)表達(dá)式應(yīng)為Sin(3.1415926/2)。.(7)隨機(jī)函數(shù))隨機(jī)函數(shù)Rnd。使用格式為:。使用格式為:Rnd(x) 返回一個(gè)隨機(jī)返回一個(gè)隨機(jī)Single型數(shù),范圍在型數(shù),范圍在(0,1)之間。之間。 參數(shù)參數(shù)x決定了產(chǎn)生隨機(jī)數(shù)的方法。決定了產(chǎn)生隨機(jī)數(shù)的方法。 如果如果x0,將產(chǎn)生下一個(gè)隨機(jī)數(shù)。例如:,將產(chǎn)生下一個(gè)隨機(jī)數(shù)。例如:Print
19、Rnd(-1), Rnd(-2), Rnd(0), Rnd(-1), Rnd(0) ,Rnd.224007 .7133257 .7133257 .224007 .224007 .7055475 例如隨機(jī)給出兩位數(shù)例如隨機(jī)給出兩位數(shù)A和和B,可用,可用:A = Int(Rnd * 90 + 10):B = Int(Rnd * 90) + 10 產(chǎn)生隨機(jī)數(shù)種的語(yǔ)句格式為:產(chǎn)生隨機(jī)數(shù)種的語(yǔ)句格式為:Randomize.(8 8)轉(zhuǎn)換函數(shù))轉(zhuǎn)換函數(shù)Val()Val()。格式:格式:Val(x$) 將參數(shù)對(duì)應(yīng)的字符串值中的最前部的數(shù)字字符將參數(shù)對(duì)應(yīng)的字符串值中的最前部的數(shù)字字符轉(zhuǎn)換為數(shù)值。如:轉(zhuǎn)換為數(shù)值
20、。如: Print Val(“ 12.3abc”), Val(“-12.367.8abc”), Val(“abc123”) 顯示:顯示:12.3 -12.367 0(9)顏色函數(shù))顏色函數(shù)QBColor。格式:。格式:QBColor(x) 根據(jù)根據(jù)x的值產(chǎn)生一種顏色,其中的值產(chǎn)生一種顏色,其中0 x 15 QBColor(0)為黑色,為黑色,QBColor(15)為白色。例為白色。例如:如:Form1.BackColor = QBColor(12).(10)顏色函數(shù))顏色函數(shù)RGB。格式:。格式:RGB(x1,x2,x3) 該函數(shù)將根據(jù)該函數(shù)將根據(jù)x1、x2和和x3的值產(chǎn)生一種顏色。的值產(chǎn)生一
21、種顏色。 各參數(shù)范圍一般應(yīng)為各參數(shù)范圍一般應(yīng)為0255??杀硎尽?杀硎?24種顏色。種顏色。 x1表示紅色成分表示紅色成分 x2表示綠色成分表示綠色成分 x3表示藍(lán)色成分。表示藍(lán)色成分。 部分顏色可用顏色常量或顏色值部分顏色可用顏色常量或顏色值(3個(gè)字節(jié)個(gè)字節(jié)),如:,如:vbBlack &H0 黑黑 Form1.BackColor = RGB(255, 0, 0) Form1.ForeColor = RGB(255, 255, 0).3.4.5 常用函數(shù)舉例常用函數(shù)舉例與與Print相關(guān)的定位函數(shù)相關(guān)的定位函數(shù) 這類函數(shù)后面往往采用分號(hào)這類函數(shù)后面往往采用分號(hào)“;”間隔符。間隔符。(
22、1)輸出絕對(duì)定位函數(shù))輸出絕對(duì)定位函數(shù)Tab。格式:。格式:Tab(x) 該函數(shù)表示將輸出位置定位到第該函數(shù)表示將輸出位置定位到第x列。列。 如果位置已超過如果位置已超過x列,則定位下一行的第列,則定位下一行的第x列。列。(2)輸出相對(duì)定位函數(shù))輸出相對(duì)定位函數(shù)Spc。格式:。格式:Spc(x) 輸出位置從當(dāng)前位置開始,空出輸出位置從當(dāng)前位置開始,空出x列。列。.3.4.5 常用函數(shù)舉例常用函數(shù)舉例【例【例3-2】在在Form_Click內(nèi)完成求平行四邊形的內(nèi)完成求平行四邊形的面積。面積公式:面積。面積公式:S=absin t。a、b為邊長(zhǎng),為邊長(zhǎng),t為為夾角,使用角度。要求結(jié)果保留小數(shù)兩位夾
23、角,使用角度。要求結(jié)果保留小數(shù)兩位本題使用多個(gè)函數(shù):本題使用多個(gè)函數(shù): 用用InputBox函數(shù)輸入函數(shù)輸入a、b和和t, 用用Val函數(shù)把它們轉(zhuǎn)換成數(shù)值類型函數(shù)把它們轉(zhuǎn)換成數(shù)值類型 用用Sin函數(shù)計(jì)算面積函數(shù)計(jì)算面積 用用Round函數(shù)對(duì)面積值進(jìn)行四舍五入。函數(shù)對(duì)面積值進(jìn)行四舍五入。本例程序按順序依次執(zhí)行本例程序按順序依次執(zhí)行.3.4.5 常用函數(shù)舉例常用函數(shù)舉例- -求梯形面積求梯形面積Private Sub Form_Click() Const PI = 3.1415926 用于設(shè)置符號(hào)常量用于設(shè)置符號(hào)常量 Dim A As Single, B As Single, T As Singl
24、e, S As Single A = Val(InputBox(請(qǐng)輸入邊長(zhǎng)請(qǐng)輸入邊長(zhǎng)a ) B = Val(InputBox(請(qǐng)輸入邊長(zhǎng)請(qǐng)輸入邊長(zhǎng)b ) T = Val(InputBox(請(qǐng)輸入角度請(qǐng)輸入角度t ) S = Round(A * B * Sin(T * PI / 180), 2) Print a= ; A, b= ; B, t=; T, S= ; SEnd Sub運(yùn)行結(jié)果:當(dāng)啟動(dòng)窗體后,單擊窗體,然后分別輸入運(yùn)行結(jié)果:當(dāng)啟動(dòng)窗體后,單擊窗體,然后分別輸入15、40、35,窗體上顯示為:窗體上顯示為:. VB的有兩類控件:的有兩類控件: 工具箱中的常用控件工具箱中的常用控件 通過通
25、過 “部件部件”的控件。的控件?!癆ctiveX控件控件” 本節(jié)介紹最常用的控件:本節(jié)介紹最常用的控件: 命令按鈕命令按鈕 標(biāo)簽標(biāo)簽 文本框文本框 滾動(dòng)條滾動(dòng)條 定時(shí)器定時(shí)器 VB控件有控件有 (名稱名稱)屬性,大多部分有屬性,大多部分有Caption、Top、Left、Height、Width、Font、Visible、Enabled等等屬性,含義基本相同屬性,含義基本相同.3.5.1 命令按鈕命令按鈕CommandButton 是用戶與應(yīng)用程序交互的最簡(jiǎn)便方法是用戶與應(yīng)用程序交互的最簡(jiǎn)便方法 往往使用單擊命令按鈕來執(zhí)行指定的操作。往往使用單擊命令按鈕來執(zhí)行指定的操作。1創(chuàng)建命令按鈕方法一:
26、方法一: 工具箱內(nèi)選取命令按鈕,然后在窗體工具箱內(nèi)選取命令按鈕,然后在窗體上拖曳鼠標(biāo)就可以畫出一個(gè)命令按鈕上拖曳鼠標(biāo)就可以畫出一個(gè)命令按鈕方法二:雙擊工具箱內(nèi)的命令按鈕方法二:雙擊工具箱內(nèi)的命令按鈕2命令按鈕的事件命令按鈕的事件命令按鈕的主要事件是命令按鈕的主要事件是Click。.3命令按鈕的屬性命令按鈕的屬性 Caption:標(biāo)題,字符型。默認(rèn)值為:標(biāo)題,字符型。默認(rèn)值為Command1 (名稱名稱):Name名稱,字符型。默認(rèn)值為名稱,字符型。默認(rèn)值為Command1 Enabled:是否有效,布爾型。:是否有效,布爾型。 Visible:是否可見,布爾型。:是否可見,布爾型。 Style
27、:按鈕顯示方式,:按鈕顯示方式,0表示文字,表示文字,1表示圖形。表示圖形。 Picture:按鈕顯示的圖形。它要求屬性:按鈕顯示的圖形。它要求屬性Style值值應(yīng)為應(yīng)為1。.說明:說明: 注意(名稱)和注意(名稱)和Caption的區(qū)別。的區(qū)別。 (名稱)是程序使用的標(biāo)識(shí)符。(名稱)是程序使用的標(biāo)識(shí)符。 Caption是界面顯示的文字是界面顯示的文字 (名稱)設(shè)置后,程序中所有用到該對(duì)象(名稱)設(shè)置后,程序中所有用到該對(duì)象的地方,對(duì)象名都要用設(shè)置的名稱,原默的地方,對(duì)象名都要用設(shè)置的名稱,原默認(rèn)名稱無效。認(rèn)名稱無效。 設(shè)置快捷鍵:可在設(shè)置快捷鍵:可在Caption屬性中加上屬性中加上“&am
28、p;”。 例如:例如:Caption設(shè)置為設(shè)置為“E&xit”或或“Exit&x”.【例【例3-3】窗體上設(shè)計(jì)窗體上設(shè)計(jì)2個(gè)圖形命令按鈕,它們分別個(gè)圖形命令按鈕,它們分別用于顯示信息和結(jié)束程序,如圖。若用戶在命令用于顯示信息和結(jié)束程序,如圖。若用戶在命令按鈕外單擊,用消息框提示按鈕外單擊,用消息框提示“不要點(diǎn)錯(cuò)位置不要點(diǎn)錯(cuò)位置”。主要屬性設(shè)置主要屬性設(shè)置兩個(gè)命令按鈕:兩個(gè)命令按鈕: Caption:空;:空;Style:1;Picture:選擇圖形:選擇圖形文件文件窗體窗體Form1 Caption:顯示:顯示.3.5.1 命令按鈕命令按鈕圖案按鈕舉例圖案按鈕舉例程序代碼如下程
29、序代碼如下:Private Sub Command1_Click() Print Hello!End SubPrivate Sub Command2_Click() EndEnd SubPrivate Sub Form_Click() 按鈕外單擊提示按鈕外單擊提示 MsgBox 不要點(diǎn)錯(cuò)位置不要點(diǎn)錯(cuò)位置, vbCritical, 警告警告End Sub.3.5.2 標(biāo)簽Label 用來顯示用戶不能直接改變的文本:用來顯示用戶不能直接改變的文本: 用作標(biāo)注其他控件用作標(biāo)注其他控件 用作程序代碼執(zhí)行時(shí)顯示程序結(jié)果等信息用作程序代碼執(zhí)行時(shí)顯示程序結(jié)果等信息1創(chuàng)建標(biāo)簽創(chuàng)建標(biāo)簽創(chuàng)建標(biāo)簽使用工具箱中的標(biāo)簽
30、。創(chuàng)建標(biāo)簽使用工具箱中的標(biāo)簽。.2標(biāo)簽的常用屬性標(biāo)簽的常用屬性Caption:標(biāo)題,即顯示的文本。默認(rèn)值為:標(biāo)題,即顯示的文本。默認(rèn)值為L(zhǎng)abel1。(名稱)(名稱)Name。設(shè)置標(biāo)簽名稱。默認(rèn)值為。設(shè)置標(biāo)簽名稱。默認(rèn)值為L(zhǎng)abel1AutoSize:設(shè)置標(biāo)簽是否根據(jù)顯示內(nèi)容自動(dòng)改變:設(shè)置標(biāo)簽是否根據(jù)顯示內(nèi)容自動(dòng)改變大小大小Backstyle:設(shè)置標(biāo)簽透明背景:設(shè)置標(biāo)簽透明背景Borderstyle:設(shè)置標(biāo)簽邊框:設(shè)置標(biāo)簽邊框WordWrap:設(shè)置標(biāo)簽內(nèi)的文字自動(dòng)換行,布爾:設(shè)置標(biāo)簽內(nèi)的文字自動(dòng)換行,布爾型。型。Alignment:設(shè)置標(biāo)簽顯示的對(duì)齊方式:設(shè)置標(biāo)簽顯示的對(duì)齊方式. 說明:說明:
31、 Label1中,第中,第5個(gè)是小寫字母?jìng)€(gè)是小寫字母l,最后一個(gè)是,最后一個(gè)是數(shù)字?jǐn)?shù)字1 設(shè)置設(shè)置WordWrap為為True時(shí),此時(shí)應(yīng)把時(shí),此時(shí)應(yīng)把AutoSize設(shè)為設(shè)為True,否則除非標(biāo)簽有足夠的,否則除非標(biāo)簽有足夠的高度。高度。 標(biāo)簽也有一些事件,但不常用。標(biāo)簽也有一些事件,但不常用。.3.5.3 文本框文本框TextBox 處理字符類型數(shù)據(jù)處理字符類型數(shù)據(jù) 文本框控件的功能非常強(qiáng)大,在控件中可以:文本框控件的功能非常強(qiáng)大,在控件中可以: 輸入文本、編輯文本和輸出文本輸入文本、編輯文本和輸出文本 被程序用來讀取和顯示信息被程序用來讀取和顯示信息1創(chuàng)建文本框創(chuàng)建文本框在工具箱內(nèi)選取文本
32、框工具在工具箱內(nèi)選取文本框工具.2文本框的主要屬性文本框的主要屬性 (名稱):(名稱):Name。字符型。默認(rèn)值為。字符型。默認(rèn)值為Text1 Text:文本框顯示的內(nèi)容,字符型。默認(rèn)值:文本框顯示的內(nèi)容,字符型。默認(rèn)值Text1。 它是文本框最重要的屬性它是文本框最重要的屬性 Locked:選擇文本框是否允許編輯,布爾型。:選擇文本框是否允許編輯,布爾型。 SelStart:選中文本的起始位置,或插入點(diǎn)位:選中文本的起始位置,或插入點(diǎn)位置置 如:如:Text1. SelStart=0. SelLength:文本框內(nèi)被選中文本的長(zhǎng)度,:文本框內(nèi)被選中文本的長(zhǎng)度,數(shù)值類型。數(shù)值類型。 SelTe
33、xt:文本框內(nèi)被選中的文本,字符型:文本框內(nèi)被選中的文本,字符型 MaxLength:設(shè)置文本框中能輸入的最大字:設(shè)置文本框中能輸入的最大字符數(shù)符數(shù) MultiLine:是否能多行顯示:是否能多行顯示 Scrollbars:設(shè)置文本框加滾動(dòng)條。與:設(shè)置文本框加滾動(dòng)條。與MultiLine有關(guān)有關(guān) PasswordChar:設(shè)置輸入文本的特殊顯示:設(shè)置輸入文本的特殊顯示字符。如字符。如*. 說明:說明: 文本框沒有文本框沒有Caption屬性。屬性。 SelStart、SelLength、SelText屬于文本編輯屬于文本編輯屬性,只能在程序中設(shè)置。屬性,只能在程序中設(shè)置。3文本框的方法文本框的
34、方法 主要方法是設(shè)置焦點(diǎn)的主要方法是設(shè)置焦點(diǎn)的SetFocus方法。方法。 格式:格式:文本框名稱文本框名稱.SetFocus.4文本框的事件文本框的事件 有有Click、DblClick等鼠標(biāo)事件等鼠標(biāo)事件 還常用:還常用: Change事件:在文本框內(nèi)容發(fā)生改變時(shí)觸事件:在文本框內(nèi)容發(fā)生改變時(shí)觸發(fā)。發(fā)。 KeyPress事件:它在用戶按任意鍵時(shí)觸發(fā)事件:它在用戶按任意鍵時(shí)觸發(fā).【例【例3-4】改寫例改寫例3-1,啟動(dòng)窗體后,用戶在,啟動(dòng)窗體后,用戶在Text1內(nèi)內(nèi)輸入攝氏溫度的同時(shí),輸入攝氏溫度的同時(shí),Text2立即自動(dòng)顯示對(duì)應(yīng)的立即自動(dòng)顯示對(duì)應(yīng)的華氏溫度。要求華氏溫度。要求Text2不能
35、輸入數(shù)據(jù)。不能輸入數(shù)據(jù)。 說明:說明: Text2不能輸入數(shù)據(jù),可設(shè)置不能輸入數(shù)據(jù),可設(shè)置Enabled或或Locked屬性。屬性。邊輸入邊計(jì)算顯示,應(yīng)編寫邊輸入邊計(jì)算顯示,應(yīng)編寫Text1的的Change事件過程事件過程Form_Load同例同例3-1,其它程序代碼如下:,其它程序代碼如下:Private Sub Text1_Change() Dim C As Single, F As Single C = Val(Text1.Text) F = 9 * C / 5 + 32 Text2.Text = FEnd Sub.剪貼板對(duì)象的使用剪貼板對(duì)象的使用 剪貼板不是剪貼板不是VB的控件,它是的
36、控件,它是Windows部件部件 它能夠和文本框合用,制作簡(jiǎn)單的文本編輯器。它能夠和文本框合用,制作簡(jiǎn)單的文本編輯器。 剪貼板對(duì)象的名稱是剪貼板對(duì)象的名稱是Clipboard,常用方法有:,常用方法有:(1)Clear:清除剪貼板中的內(nèi)容。:清除剪貼板中的內(nèi)容。(2)GetText:返回剪貼板上的所有字符。:返回剪貼板上的所有字符。(3)SetText:將字符串送入剪貼板:將字符串送入剪貼板. Clipboard.Clear 清除剪貼板原有的內(nèi)容;清除剪貼板原有的內(nèi)容; Clipboard.SetText Text1.SelText 將文本框?qū)⑽谋究騎ext1中選擇的內(nèi)容送入剪貼板;中選擇的內(nèi)
37、容送入剪貼板; Text1.SelText = Clipboard.GetText 將剪貼板的內(nèi)容放入文本框?qū)⒓糍N板的內(nèi)容放入文本框Text1中插入點(diǎn)中插入點(diǎn)所在位置,所在位置, 或替換文本框中當(dāng)前已選中的文字?;蛱鎿Q文本框中當(dāng)前已選中的文字。.3.5.4 滾動(dòng)條滾動(dòng)條(VscrollBar和和HscrollBar) 滾動(dòng)條可用于滾動(dòng)顯示窗口內(nèi)容。滾動(dòng)條可用于滾動(dòng)顯示窗口內(nèi)容。 滾動(dòng)條還可作為模糊輸入數(shù)值的輸入裝置。滾動(dòng)條還可作為模糊輸入數(shù)值的輸入裝置。 VB工具箱內(nèi)提供了垂直和水平兩種滾動(dòng)條。工具箱內(nèi)提供了垂直和水平兩種滾動(dòng)條。.1創(chuàng)建滾動(dòng)條創(chuàng)建滾動(dòng)條在工具箱內(nèi)選取滾動(dòng)條工具按鈕。在工具箱內(nèi)
38、選取滾動(dòng)條工具按鈕。2滾動(dòng)條控件的滾動(dòng)條控件的常用常用屬性屬性 (名稱):(名稱):Name名稱。垂直名稱。垂直VScroll1,水平,水平HScroll1 Value:滾動(dòng)條當(dāng)前值。位于屬性:滾動(dòng)條當(dāng)前值。位于屬性Min和和Max的值之間的值之間 Min:滾動(dòng)條最小值。應(yīng)大于等于:滾動(dòng)條最小值。應(yīng)大于等于-32768 Max:滾動(dòng)條最大值。應(yīng)小于等于:滾動(dòng)條最大值。應(yīng)小于等于32767 SmallChange:?jiǎn)螕魸L動(dòng)箭頭時(shí)的改變量:?jiǎn)螕魸L動(dòng)箭頭時(shí)的改變量 LargeChange:?jiǎn)螕魸L動(dòng)塊與滾動(dòng)箭頭間的任意位置,:?jiǎn)螕魸L動(dòng)塊與滾動(dòng)箭頭間的任意位置,滾動(dòng)條值的改變量滾動(dòng)條值的改變量.3滾動(dòng)條
39、控件的事件滾動(dòng)條控件的事件主要是主要是Change事件和事件和Scroll事件。事件。(1)Change事件。事件。當(dāng)滾動(dòng)塊在滾動(dòng)條上移動(dòng)時(shí),其當(dāng)滾動(dòng)塊在滾動(dòng)條上移動(dòng)時(shí),其Value值值發(fā)生變化,出現(xiàn)發(fā)生變化,出現(xiàn)Change事件。事件。 (2)Scroll事件。事件。當(dāng)鼠標(biāo)拖動(dòng)滾動(dòng)塊時(shí)發(fā)生。當(dāng)鼠標(biāo)拖動(dòng)滾動(dòng)塊時(shí)發(fā)生。.【例【例3-5】編寫一個(gè)利用滾動(dòng)條來顯示顏色的程序,編寫一個(gè)利用滾動(dòng)條來顯示顏色的程序,如圖。說明:如圖。說明: 顏色使用顏色使用RGB函數(shù)函數(shù) 用用3個(gè)滾動(dòng)條分別表示個(gè)滾動(dòng)條分別表示RGB紅、綠、藍(lán)顏色成份紅、綠、藍(lán)顏色成份(3個(gè)參數(shù))的變化。個(gè)參數(shù))的變化。 滾動(dòng)條的滾動(dòng)條的
40、Change事件:將滾動(dòng)塊變化時(shí)的相應(yīng)事件:將滾動(dòng)塊變化時(shí)的相應(yīng)的顏色將反映在文本框中的顏色將反映在文本框中 6個(gè)標(biāo)簽:表示各滾動(dòng)條的顏色和值個(gè)標(biāo)簽:表示各滾動(dòng)條的顏色和值. 屬性設(shè)置:屬性設(shè)置: 滾動(dòng)條的滾動(dòng)條的Max:255,SmallChange:10;LargeChange:20 其它對(duì)象的其它對(duì)象的Caption屬性值如圖。屬性值如圖。 .程序代碼如下:程序代碼如下:Private Sub HScroll1_Change() 紅紅 Text1.BackColor = RGB(HScroll1.Value, HScroll2.Value, _ HScroll3.Value) Label
41、4.Caption = HScroll1.ValueEnd SubPrivate Sub HScroll2_Change() 綠綠 Text1.BackColor = RGB(HScroll1.Value, HScroll2.Value, _ HScroll3.Value) Label5.Caption = HScroll2.ValueEnd SubPrivate Sub HScroll3_Change() 藍(lán)藍(lán) Text1.BackColor = RGB(HScroll1.Value, HScroll2.Value, _ HScroll3.Value) Label6.Caption = HS
42、croll3.ValueEnd Sub. 專門用于時(shí)間控制的控件,又稱計(jì)時(shí)器控件。專門用于時(shí)間控制的控件,又稱計(jì)時(shí)器控件。 可以有規(guī)律地間隔一段時(shí)間觸發(fā)一次定時(shí)事件,可以有規(guī)律地間隔一段時(shí)間觸發(fā)一次定時(shí)事件,從而執(zhí)行一次代碼以實(shí)現(xiàn)某種有時(shí)間規(guī)律的操?gòu)亩鴪?zhí)行一次代碼以實(shí)現(xiàn)某種有時(shí)間規(guī)律的操作。作。 時(shí)間間隔由時(shí)間間隔由Interval屬性決定屬性決定 例如可以顯示時(shí)間,可以控制打字速度,可例如可以顯示時(shí)間,可以控制打字速度,可以制作有動(dòng)態(tài)效果的程序等。以制作有動(dòng)態(tài)效果的程序等。 每個(gè)定時(shí)器必須依附在窗體上每個(gè)定時(shí)器必須依附在窗體上 用戶可以在窗體上建立多個(gè)定時(shí)器。用戶可以在窗體上建立多個(gè)定時(shí)器。
43、 定時(shí)器控件在程序運(yùn)行時(shí)是不可見的定時(shí)器控件在程序運(yùn)行時(shí)是不可見的 定時(shí)器沒有大小。定時(shí)器沒有大小。.1創(chuàng)建定時(shí)器創(chuàng)建定時(shí)器在工具箱內(nèi)選取定時(shí)器控件在工具箱內(nèi)選取定時(shí)器控件2定時(shí)器的定時(shí)器的常用常用屬性屬性 (名稱):(名稱):Name。定時(shí)器的名稱。默認(rèn)值為。定時(shí)器的名稱。默認(rèn)值為Timer1 Interval:設(shè)定定時(shí)器的時(shí)間間隔,單位毫秒,:設(shè)定定時(shí)器的時(shí)間間隔,單位毫秒,即即1/1000秒,最大秒,最大65536。 它是定時(shí)器控件最主要的屬性。默認(rèn)為它是定時(shí)器控件最主要的屬性。默認(rèn)為0,定時(shí)器不工作定時(shí)器不工作 Enabled:是否讓定時(shí)器工作。默認(rèn)值為:是否讓定時(shí)器工作。默認(rèn)值為Tr
44、ue。.3定時(shí)器的事件定時(shí)器的事件 定時(shí)器事件只有一個(gè),即定時(shí)器事件只有一個(gè),即Timer事件:事件: Timer事件有規(guī)律地隔一段時(shí)間(由事件有規(guī)律地隔一段時(shí)間(由Interval決定)觸發(fā)一次決定)觸發(fā)一次1.【例【例3-6】設(shè)計(jì)一個(gè)顯示當(dāng)前時(shí)鐘的程序,如圖。設(shè)計(jì)一個(gè)顯示當(dāng)前時(shí)鐘的程序,如圖。 因文本框只顯示信息,因文本框只顯示信息,Enabled屬性可為屬性可為False; 時(shí)鐘時(shí)鐘1秒鐘變化一次,定時(shí)器秒鐘變化一次,定時(shí)器Interval值為值為1000。 程序非常簡(jiǎn)單,代碼如下。程序非常簡(jiǎn)單,代碼如下。Private Sub Timer1_Timer() 每隔每隔1秒鐘運(yùn)行秒鐘運(yùn)行1
45、次次 Text1.Text = Time Time是是VB內(nèi)部函數(shù),內(nèi)部函數(shù),End Sub 賦值時(shí),賦值時(shí),VB自動(dòng)將日期型數(shù)據(jù)轉(zhuǎn)換成與賦值左自動(dòng)將日期型數(shù)據(jù)轉(zhuǎn)換成與賦值左邊變量或?qū)傩灶愋鸵恢碌臄?shù)據(jù)邊變量或?qū)傩灶愋鸵恢碌臄?shù)據(jù).3.7.1 程序錯(cuò)誤的種類和產(chǎn)生的原因程序錯(cuò)誤的種類和產(chǎn)生的原因調(diào)試過程就是一個(gè)發(fā)現(xiàn)錯(cuò)誤并糾正錯(cuò)誤的過程。調(diào)試過程就是一個(gè)發(fā)現(xiàn)錯(cuò)誤并糾正錯(cuò)誤的過程。VB程序錯(cuò)誤分三類程序錯(cuò)誤分三類編譯錯(cuò)誤編譯錯(cuò)誤代碼不符合語(yǔ)法格式要求,如語(yǔ)句不完整,代碼不符合語(yǔ)法格式要求,如語(yǔ)句不完整,參數(shù)個(gè)數(shù)不符等參數(shù)個(gè)數(shù)不符等1. 可根據(jù)錯(cuò)誤信息糾正編譯錯(cuò)誤可根據(jù)錯(cuò)誤信息糾正編譯錯(cuò)誤. 邏輯錯(cuò)誤邏
46、輯錯(cuò)誤 一般是指程序能運(yùn)行,但運(yùn)行結(jié)果不正確。一般是指程序能運(yùn)行,但運(yùn)行結(jié)果不正確。 這類錯(cuò)誤只有通過分析程序,才能發(fā)現(xiàn)問這類錯(cuò)誤只有通過分析程序,才能發(fā)現(xiàn)問題所在,如公式錯(cuò)。題所在,如公式錯(cuò)。 運(yùn)行錯(cuò)誤運(yùn)行錯(cuò)誤 一般是執(zhí)行了不能執(zhí)行的操作而引起的。一般是執(zhí)行了不能執(zhí)行的操作而引起的。如分母為零如分母為零 可根據(jù)提示錯(cuò)誤信息,進(jìn)入調(diào)試,找出錯(cuò)可根據(jù)提示錯(cuò)誤信息,進(jìn)入調(diào)試,找出錯(cuò)誤所在處。誤所在處。 為減少錯(cuò)誤,編程時(shí)可采用一定的措施,如使用為減少錯(cuò)誤,編程時(shí)可采用一定的措施,如使用Option Explicit語(yǔ)句語(yǔ)句.3.7.2 調(diào)試程序調(diào)試程序 VB中常用的調(diào)試方法有:設(shè)置斷點(diǎn)、單步執(zhí)行、
47、中常用的調(diào)試方法有:設(shè)置斷點(diǎn)、單步執(zhí)行、查看中間運(yùn)行結(jié)果等。查看中間運(yùn)行結(jié)果等。1設(shè)置斷點(diǎn)設(shè)置斷點(diǎn) 設(shè)置斷點(diǎn)方式:在代碼窗口左側(cè)的設(shè)置斷點(diǎn)方式:在代碼窗口左側(cè)的“邊界標(biāo)識(shí)條邊界標(biāo)識(shí)條”中該行對(duì)應(yīng)的位置處單擊;中該行對(duì)應(yīng)的位置處單擊; 程序運(yùn)行設(shè)置了斷點(diǎn)程序運(yùn)行設(shè)置了斷點(diǎn)(Break Point)的代碼行時(shí),的代碼行時(shí),在執(zhí)行該代碼之前停止運(yùn)行,進(jìn)入中斷模式。在執(zhí)行該代碼之前停止運(yùn)行,進(jìn)入中斷模式。 進(jìn)入中斷模式后,當(dāng)前行指示器指示程序暫停在進(jìn)入中斷模式后,當(dāng)前行指示器指示程序暫停在該行。這時(shí)可以在代碼窗口或該行。這時(shí)可以在代碼窗口或“立即窗口立即窗口”檢查檢查程序狀態(tài)。程序狀態(tài)。.2單步執(zhí)行單
48、步執(zhí)行 單步單步(Step)執(zhí)行可以功能鍵執(zhí)行可以功能鍵F8。 每按一次每按一次F8,程序就執(zhí)行一行,執(zhí)行指示器就,程序就執(zhí)行一行,執(zhí)行指示器就指向下一行。指向下一行。 單步執(zhí)行,可以監(jiān)視變量,還可以跟蹤程序流單步執(zhí)行,可以監(jiān)視變量,還可以跟蹤程序流程。特別是分支和循環(huán)程序。程。特別是分支和循環(huán)程序。.3查看中間運(yùn)行結(jié)果查看中間運(yùn)行結(jié)果 中斷和單步方式都可以在程序暫停狀態(tài)下查看中中斷和單步方式都可以在程序暫停狀態(tài)下查看中間運(yùn)行結(jié)果:間運(yùn)行結(jié)果: 使用立即窗口使用立即窗口 程序中添加程序中添加Print語(yǔ)句語(yǔ)句 使用使用VB的的Tip顯示當(dāng)前變量的值。顯示當(dāng)前變量的值。. 另一種查看程序中間結(jié)果
49、的方法是使用監(jiān)視窗口另一種查看程序中間結(jié)果的方法是使用監(jiān)視窗口 在程序運(yùn)行過程中,監(jiān)視窗口中的表達(dá)式值隨在程序運(yùn)行過程中,監(jiān)視窗口中的表達(dá)式值隨之變化。之變化。 添加監(jiān)視的方法:添加監(jiān)視的方法: 在代碼編輯器中使用快捷菜單在代碼編輯器中使用快捷菜單 “添加監(jiān)視添加監(jiān)視”命令命令 選擇調(diào)試代碼所在的模塊和過程選擇調(diào)試代碼所在的模塊和過程 輸入要監(jiān)視值的表達(dá)式。輸入要監(jiān)視值的表達(dá)式。.【例【例3-73-7】已知三角形的三條邊長(zhǎng)已知三角形的三條邊長(zhǎng)a a、b b、c c,求面積。公式為:,求面積。公式為:其中:其中:s=(a+b+c)/2s=(a+b+c)/2 要求要求 a a、b b、c c來自文
50、本框來自文本框 用用MsgboxMsgbox顯示面積顯示面積( (保留小數(shù)兩位保留小數(shù)兩位) )。 label4label4在運(yùn)行中臨時(shí)顯示在運(yùn)行中臨時(shí)顯示a+b-ca+b-c、b+c-ab+c-a、a+c-ba+c-b的值的值 Command1Command1用于計(jì)算,用于計(jì)算,Command2Command2用于退出用于退出 定時(shí)器用于在窗體標(biāo)題上顯示當(dāng)前的時(shí)間。定時(shí)器用于在窗體標(biāo)題上顯示當(dāng)前的時(shí)間。)()(csbsassArea. 分析:分析:能構(gòu)成三角形時(shí)才有意義,可在顯示能構(gòu)成三角形時(shí)才有意義,可在顯示a+b-ca+b-c、b+c-ab+c-a、a+c-ba+c-b值后,加上值后,加上StopStop語(yǔ)句,或使用斷語(yǔ)句,或使用斷點(diǎn),進(jìn)行觀察。點(diǎn),進(jìn)行觀察。)()(csbsassArea.求三角形面積求三角形面積Private Sub Form_Load() 設(shè)置屬性設(shè)置屬性 Text1.Text = : Text2.Text = : Text3.Text = “ Label1.Captio
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權(quán)】 ISO 23649:2025 EN Chemicals for the leather tanning industry - Determination of cyclosiloxanes
- 【正版授權(quán)】 ISO 3518:2025 EN Essential oil of sandalwood (Santalum album L.)
- 【正版授權(quán)】 ISO 18162:2024 EN Biotechnology - Biobanking - Requirements for human neural stem cells derived from pluripotent stem cells
- 2025年度標(biāo)準(zhǔn)托盤租賃及全程跟蹤服務(wù)協(xié)議
- 二手機(jī)械二手交易與環(huán)保處理服務(wù)合同(2025版)
- 2025年度二手房購(gòu)房貸款保險(xiǎn)合同范本
- 2025年辦公設(shè)備升級(jí)改造項(xiàng)目合作協(xié)議
- 生產(chǎn)計(jì)劃的周期性評(píng)審與調(diào)整
- 農(nóng)業(yè)生產(chǎn)的安全防護(hù)措施計(jì)劃
- 如何制定子女的教育基金計(jì)劃
- 全套教學(xué)課件《工程倫理學(xué)》
- 8.3 摩擦力 同步練習(xí)-2021-2022學(xué)年人教版物理八年級(jí)下冊(cè)(Word版含答案)
- 級(jí)本科診斷學(xué)緒論+問診課件
- 初中足球選拔測(cè)試標(biāo)準(zhǔn)
- 《現(xiàn)代漢語(yǔ)詞匯》PPT課件(完整版)
- 法社會(huì)學(xué)(上課)
- 沉積學(xué)與古地理
- 生理學(xué)教學(xué)大綱
- 化工原理課程設(shè)計(jì)(換熱器)
- 環(huán)保鐵1215物質(zhì)安全資料表MSDS
- “君子教育”特色課程的探索
評(píng)論
0/150
提交評(píng)論