第5章數(shù)據(jù)的輸入與輸出_第1頁(yè)
第5章數(shù)據(jù)的輸入與輸出_第2頁(yè)
第5章數(shù)據(jù)的輸入與輸出_第3頁(yè)
第5章數(shù)據(jù)的輸入與輸出_第4頁(yè)
第5章數(shù)據(jù)的輸入與輸出_第5頁(yè)
已閱讀5頁(yè),還剩67頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、數(shù)據(jù)輸出數(shù)據(jù)輸出 Print Print方法方法 5.1數(shù)據(jù)輸入數(shù)據(jù)輸入 InputBoxInputBox函數(shù)函數(shù) 5.2MsgBoxMsgBox函數(shù)和函數(shù)和MsgBoxMsgBox語(yǔ)句語(yǔ)句 5.3 打印機(jī)輸出打印機(jī)輸出53.4 Print方法可以在窗體、圖片框、打印方法可以在窗體、圖片框、打印機(jī)和立即窗口中輸出指定的信息,其一般機(jī)和立即窗口中輸出指定的信息,其一般格式如下:格式如下: 對(duì)象名稱(chēng)對(duì)象名稱(chēng).Print 表達(dá)式表表達(dá)式表,|;說(shuō)明:說(shuō)明:(1)“對(duì)象名稱(chēng)對(duì)象名稱(chēng)”可以是窗體(可以是窗體(Form)、)、圖片框(圖片框(Picturebox)、打印機(jī)()、打印機(jī)(Printer)以及

2、立即窗口()以及立即窗口(Debug)。如省略對(duì)象)。如省略對(duì)象名稱(chēng),則默認(rèn)在窗體上輸出。名稱(chēng),則默認(rèn)在窗體上輸出。(2)表達(dá)式可以是一個(gè)或多個(gè)表達(dá)式,可以表達(dá)式可以是一個(gè)或多個(gè)表達(dá)式,可以是數(shù)值表達(dá)式也可以是字符表達(dá)式,當(dāng)是數(shù)值表達(dá)式也可以是字符表達(dá)式,當(dāng)是字符表達(dá)式時(shí),按照原樣輸出;當(dāng)是是字符表達(dá)式時(shí),按照原樣輸出;當(dāng)是數(shù)值表達(dá)式時(shí),輸出表達(dá)式的值。數(shù)值表達(dá)式時(shí),輸出表達(dá)式的值。 (3)當(dāng)輸出表達(dá)式是多個(gè)時(shí),表達(dá)式之間必當(dāng)輸出表達(dá)式是多個(gè)時(shí),表達(dá)式之間必須加上分隔符,分隔符可以是須加上分隔符,分隔符可以是“,”、“;”或或“空格空格”。用。用“,”號(hào)時(shí),表號(hào)時(shí),表示按標(biāo)準(zhǔn)的輸出格式(即按區(qū)

3、段輸出格示按標(biāo)準(zhǔn)的輸出格式(即按區(qū)段輸出格式)顯示數(shù)據(jù)項(xiàng),也就是以式)顯示數(shù)據(jù)項(xiàng),也就是以14個(gè)字符位個(gè)字符位置為單位把一個(gè)輸出行分為若干個(gè)區(qū)段置為單位把一個(gè)輸出行分為若干個(gè)區(qū)段,逗號(hào)后面的表達(dá)式在下一個(gè)區(qū)段輸出,逗號(hào)后面的表達(dá)式在下一個(gè)區(qū)段輸出;如果用分號(hào)或空格作為多個(gè)表達(dá)式的;如果用分號(hào)或空格作為多個(gè)表達(dá)式的分隔符,則表示各輸出項(xiàng)按緊湊格式輸分隔符,則表示各輸出項(xiàng)按緊湊格式輸出。出。 (4)如果省略表達(dá)式表,則表示輸出一個(gè))如果省略表達(dá)式表,則表示輸出一個(gè)空行??招?。(5)Print方法有計(jì)算和輸出雙重功能,方法有計(jì)算和輸出雙重功能,但是應(yīng)該特別注意,它沒(méi)有賦值功能。但是應(yīng)該特別注意,它沒(méi)

4、有賦值功能。 (6)如果想讓多個(gè))如果想讓多個(gè)Print語(yǔ)句輸出的內(nèi)容語(yǔ)句輸出的內(nèi)容在同一行上,可以在表達(dá)式后面加上分在同一行上,可以在表達(dá)式后面加上分隔符逗號(hào)或者分號(hào),那么多個(gè)隔符逗號(hào)或者分號(hào),那么多個(gè)Print語(yǔ)句語(yǔ)句的輸出項(xiàng)會(huì)出現(xiàn)在同一行,如用逗號(hào)按的輸出項(xiàng)會(huì)出現(xiàn)在同一行,如用逗號(hào)按標(biāo)準(zhǔn)輸出格式輸出,如用分號(hào)按緊湊格標(biāo)準(zhǔn)輸出格式輸出,如用分號(hào)按緊湊格式輸出。式輸出。 例例5-1(參看教材(參看教材P51-52)5.1.2 5.1.2 與與PrintPrint方法有關(guān)的函數(shù)方法有關(guān)的函數(shù) 為了輸出的信息按照指定的格式為了輸出的信息按照指定的格式輸出,輸出,VB中提供了幾個(gè)和信息輸出位中提供

5、了幾個(gè)和信息輸出位置有關(guān)的函數(shù),比如置有關(guān)的函數(shù),比如Tab函數(shù)、函數(shù)、Spc函函數(shù)等等。數(shù)等等。1.Tab1.Tab函數(shù)函數(shù)格式:格式:Tab(n) Tab函數(shù)完成的功能就是將光標(biāo)移動(dòng)到由函數(shù)完成的功能就是將光標(biāo)移動(dòng)到由n指定的位置進(jìn)行輸指定的位置進(jìn)行輸出,要輸出的內(nèi)容放在出,要輸出的內(nèi)容放在Tab函數(shù)后面,并用分號(hào)隔開(kāi)。函數(shù)后面,并用分號(hào)隔開(kāi)。說(shuō)明:說(shuō)明:(1)參數(shù))參數(shù)n確定位置,它是一個(gè)整型值,表示下一個(gè)輸出位置的列確定位置,它是一個(gè)整型值,表示下一個(gè)輸出位置的列號(hào),號(hào),n值從最左端開(kāi)始計(jì)數(shù),通常最左側(cè)的列號(hào)為值從最左端開(kāi)始計(jì)數(shù),通常最左側(cè)的列號(hào)為1,如當(dāng)前的輸,如當(dāng)前的輸出位置已經(jīng)大

6、于出位置已經(jīng)大于n值,那么自動(dòng)換到下一行值,那么自動(dòng)換到下一行n值指示的位置輸出表值指示的位置輸出表達(dá)式。如果達(dá)式。如果n1,則光標(biāo)移動(dòng)到第一列。,則光標(biāo)移動(dòng)到第一列。(2)Tab函數(shù)中的參數(shù)函數(shù)中的參數(shù)n沒(méi)有具體的限制。當(dāng)沒(méi)有具體的限制。當(dāng)n值大于行寬時(shí),輸出值大于行寬時(shí),輸出位置為位置為n Mod 行寬。行寬。(3)當(dāng)一個(gè))當(dāng)一個(gè)Print語(yǔ)句中有多個(gè)表達(dá)式時(shí),每個(gè)表達(dá)式對(duì)應(yīng)一個(gè)語(yǔ)句中有多個(gè)表達(dá)式時(shí),每個(gè)表達(dá)式對(duì)應(yīng)一個(gè)Tab函數(shù)也就是說(shuō)該輸出項(xiàng)的位置由它前面的函數(shù)也就是說(shuō)該輸出項(xiàng)的位置由它前面的Tab函數(shù)決定,各輸出函數(shù)決定,各輸出項(xiàng)之間以及項(xiàng)之間以及Tab函數(shù)和輸出項(xiàng)之間都用分號(hào)作為分隔

7、符。函數(shù)和輸出項(xiàng)之間都用分號(hào)作為分隔符。 例例5-2(參看教材(參看教材P54-55)2.Spc2.Spc函數(shù)函數(shù)格式:格式:Spc(n) 跳過(guò)跳過(guò)n個(gè)空格,使光標(biāo)來(lái)到下一個(gè)指定的輸出位置。個(gè)空格,使光標(biāo)來(lái)到下一個(gè)指定的輸出位置。說(shuō)明:說(shuō)明:(1)n是一個(gè)數(shù)值表達(dá)式,取值范圍為是一個(gè)數(shù)值表達(dá)式,取值范圍為032767的整數(shù)。的整數(shù)。Spc函數(shù)與輸出項(xiàng)之間用分號(hào)隔開(kāi)。例如:函數(shù)與輸出項(xiàng)之間用分號(hào)隔開(kāi)。例如: Print hello;Spc(4);everyone hello everyone(2)需要特別注意的是)需要特別注意的是Spc函數(shù)可以完成與函數(shù)可以完成與Tab函數(shù)相似函數(shù)相似的功能,但

8、是它們的功能,但是它們n值的含義是不同的,值的含義是不同的,Tab函數(shù)從最函數(shù)從最左端開(kāi)始計(jì)數(shù),而左端開(kāi)始計(jì)數(shù),而Spc函數(shù)從上一輸出項(xiàng)開(kāi)始計(jì)數(shù)。函數(shù)從上一輸出項(xiàng)開(kāi)始計(jì)數(shù)。 5.1.3 5.1.3 格式輸出格式輸出 用格式輸出函數(shù)用格式輸出函數(shù)Format(或(或Format$)可以實(shí)現(xiàn)使數(shù)值、日期或字符型數(shù)據(jù)按指定可以實(shí)現(xiàn)使數(shù)值、日期或字符型數(shù)據(jù)按指定的格式輸出。格式輸出函數(shù)的格式輸出。格式輸出函數(shù)Format的一般格的一般格式如下:式如下: Format(表達(dá)式,格式字符串)(表達(dá)式,格式字符串) 該函數(shù)的功能是按照該函數(shù)的功能是按照“格式字符串格式字符串”的的格式輸出格式輸出“表達(dá)式表達(dá)

9、式”的值。的值?!氨磉_(dá)式表達(dá)式”可以可以是數(shù)值型、日期型或者字符型的表達(dá)式。是數(shù)值型、日期型或者字符型的表達(dá)式?!案袷阶址袷阶址庇蓪?zhuān)門(mén)的格式說(shuō)明字符組成。由專(zhuān)門(mén)的格式說(shuō)明字符組成。當(dāng)格式字符串為常量時(shí),必須放在雙引號(hào)中當(dāng)格式字符串為常量時(shí),必須放在雙引號(hào)中。常用格式說(shuō)明字符有:常用格式說(shuō)明字符有:(1)#:數(shù)字占位符。如果表達(dá)式在格式字符串:數(shù)字占位符。如果表達(dá)式在格式字符串的的“#”位置上有數(shù)字,就顯示出來(lái),如果沒(méi)有位置上有數(shù)字,就顯示出來(lái),如果沒(méi)有,就不用顯示。如果要顯示的數(shù)值的位數(shù)小于,就不用顯示。如果要顯示的數(shù)值的位數(shù)小于格式字符串指定的區(qū)段的長(zhǎng)度,則該數(shù)值靠區(qū)格式字符串指定的

10、區(qū)段的長(zhǎng)度,則該數(shù)值靠區(qū)段左端顯示,如果要顯示的數(shù)值的位數(shù)大于指段左端顯示,如果要顯示的數(shù)值的位數(shù)大于指定的區(qū)段長(zhǎng)度,則數(shù)值照原樣顯示。例如:定的區(qū)段長(zhǎng)度,則數(shù)值照原樣顯示。例如: Print Format(123.456,#.#) 123.46 結(jié)果靠左端顯示結(jié)果靠左端顯示(2)0:也是數(shù)字占位符。與:也是數(shù)字占位符。與“#”功能相似,不功能相似,不同的是多余的位在輸出時(shí)用同的是多余的位在輸出時(shí)用“0”補(bǔ)齊。例如:補(bǔ)齊。例如: Print Format(1234.56,000000.0000) 001234.5600(3).:小數(shù)點(diǎn)占位符??梢苑旁陲@示區(qū):小數(shù)點(diǎn)占位符。可以放在顯示區(qū)段的任何

11、位置。小數(shù)點(diǎn)部分多余的數(shù)字段的任何位置。小數(shù)點(diǎn)部分多余的數(shù)字按四舍五入處理??梢耘c按四舍五入處理??梢耘c“#”和和“0”結(jié)結(jié)合使用表示指定的輸出格式。例如:合使用表示指定的輸出格式。例如: Print Format(1234.56,000000.#) 001234.6(4),:千位分隔符占位符。從小數(shù)點(diǎn)的),:千位分隔符占位符。從小數(shù)點(diǎn)的左側(cè)開(kāi)始,每三位是一節(jié),用逗號(hào)隔開(kāi)左側(cè)開(kāi)始,每三位是一節(jié),用逗號(hào)隔開(kāi)。注意千位分隔符可以放在小數(shù)點(diǎn)左側(cè)。注意千位分隔符可以放在小數(shù)點(diǎn)左側(cè)(除頭部和緊靠小數(shù)點(diǎn)位置外)的其他(除頭部和緊靠小數(shù)點(diǎn)位置外)的其他任何位置。例如:任何位置。例如: Print Forma

12、t(12345.678,00000,0.#) 012,345.68另外還可以使用:百分號(hào)(另外還可以使用:百分號(hào)(%)、美元符號(hào)()、美元符號(hào)($)、正號(hào))、正號(hào)(+)、負(fù)號(hào)()、負(fù)號(hào)(-)、指數(shù)形式()、指數(shù)形式(E+或或E-)等來(lái)設(shè)置數(shù))等來(lái)設(shè)置數(shù)值型數(shù)據(jù)的輸出格式。例如:值型數(shù)據(jù)的輸出格式。例如:Print Format(0.123,#.#0%) 12.30%Print Format(12.3,$#.000) $12.300Print Format(12.3,+#.#) +12.3Print Format(123.4,0.00e+00) 1.23e+02 同樣,利用同樣,利用Format

13、還可設(shè)置日期型還可設(shè)置日期型和字符型數(shù)據(jù)的輸出格式。常用的日期和字符型數(shù)據(jù)的輸出格式。常用的日期型、字符型格式說(shuō)明符如表型、字符型格式說(shuō)明符如表5-2所示。所示。表5-2 常用格式說(shuō)明符字符說(shuō)明舉例dddddd以完整日期表示法顯示日期(包括年月日)Print Format(Date,dddddd) 2005年5月6日mmmm以全稱(chēng)表示月份(JanuaryDecember)Print Format(Date,mmmm) Mayyyyy以四位數(shù)來(lái)表示年P(guān)rint Format(Date,yyyy) 2005hh以有前導(dǎo)零來(lái)顯示小時(shí)(hh)、分(nn)或秒(ss)Print Format(Time,

14、hh:nn:ss) 08:58:55ttttt以完整時(shí)間表示顯示(包括時(shí)、分、秒),用系統(tǒng)識(shí)別的時(shí)間格式定義的時(shí)間分隔符進(jìn)行格式化。缺省的時(shí)間格式為hh:nn:ssPrint Format(Time,ttttt) 9:02:195.2 5.2 數(shù)據(jù)輸入數(shù)據(jù)輸入 InputBoxInputBox函數(shù)函數(shù) 在在Visual Basic中提供了多種數(shù)據(jù)的中提供了多種數(shù)據(jù)的輸入方式,其中用的最普遍的是文本框輸入方式,其中用的最普遍的是文本框和對(duì)話(huà)框。用文本框?qū)崿F(xiàn)數(shù)據(jù)的輸入將和對(duì)話(huà)框。用文本框?qū)崿F(xiàn)數(shù)據(jù)的輸入將在第六章中介紹,本小節(jié)主要介紹利用在第六章中介紹,本小節(jié)主要介紹利用對(duì)話(huà)框輸入數(shù)據(jù)。對(duì)話(huà)框輸入數(shù)

15、據(jù)。 當(dāng)程序需要向用戶(hù)取得如文字或數(shù)當(dāng)程序需要向用戶(hù)取得如文字或數(shù)字之類(lèi)的信息時(shí),則需要用到輸入數(shù)據(jù)字之類(lèi)的信息時(shí),則需要用到輸入數(shù)據(jù)對(duì)話(huà)框,即對(duì)話(huà)框,即InputBox函數(shù)。該函數(shù)的格函數(shù)。該函數(shù)的格式如下:式如下: InputBox ( prompt,title,default,xpos,ypos,helpfile,context ) 方括號(hào)括起來(lái)的是可選參數(shù),該方括號(hào)括起來(lái)的是可選參數(shù),該函數(shù)有函數(shù)有7 7個(gè)參數(shù),其含義如下:個(gè)參數(shù),其含義如下:(1)prompt:是一個(gè)字符串,其長(zhǎng)度不:是一個(gè)字符串,其長(zhǎng)度不得超過(guò)得超過(guò)1024個(gè)字符,它是在對(duì)話(huà)框中顯個(gè)字符,它是在對(duì)話(huà)框中顯示的信息,

16、用來(lái)提示用戶(hù)輸入。在對(duì)話(huà)示的信息,用來(lái)提示用戶(hù)輸入。在對(duì)話(huà)框內(nèi)顯示框內(nèi)顯示prompt時(shí),可以自動(dòng)換行。如時(shí),可以自動(dòng)換行。如果想按自己的要求換行,則必須插入回果想按自己的要求換行,則必須插入回車(chē)換行操作,即:車(chē)換行操作,即: Chr$(13)+Chr$(10) 或或 vbCrLf (2)title:字符串,它是對(duì)話(huà)框的標(biāo)題,顯示在對(duì)話(huà)框頂部的標(biāo)題:字符串,它是對(duì)話(huà)框的標(biāo)題,顯示在對(duì)話(huà)框頂部的標(biāo)題上。上。(3)default:字符串,用來(lái)顯示輸入緩沖區(qū)的默認(rèn)信息。:字符串,用來(lái)顯示輸入緩沖區(qū)的默認(rèn)信息。(4)xpos:可選的。數(shù)值表達(dá)式,成對(duì)出現(xiàn),指定對(duì)話(huà)框的左邊與:可選的。數(shù)值表達(dá)式,成對(duì)出

17、現(xiàn),指定對(duì)話(huà)框的左邊與屏幕左邊的水平距離。如果省略屏幕左邊的水平距離。如果省略 xpos,則對(duì)話(huà)框會(huì)在水平方向居,則對(duì)話(huà)框會(huì)在水平方向居中。中。(5)ypos:可選的。數(shù)值表達(dá)式,成對(duì)出現(xiàn),指定對(duì)話(huà)框的上邊與:可選的。數(shù)值表達(dá)式,成對(duì)出現(xiàn),指定對(duì)話(huà)框的上邊與屏幕上邊的距離。如果省略屏幕上邊的距離。如果省略 ypos,則對(duì)話(huà)框被放置在屏幕垂直方,則對(duì)話(huà)框被放置在屏幕垂直方向距下邊大約三分之一的位置。向距下邊大約三分之一的位置。(6)helpfile:可選的。字符串表達(dá)式,識(shí)別幫助文件,用該文件為:可選的。字符串表達(dá)式,識(shí)別幫助文件,用該文件為對(duì)話(huà)框提供上下文相關(guān)的幫助。如果已提供對(duì)話(huà)框提供上下文

18、相關(guān)的幫助。如果已提供 helpfile,則也必須,則也必須提供提供 context。(7)context:可選的。數(shù)值表達(dá)式,由幫助文件的作者指定給某個(gè):可選的。數(shù)值表達(dá)式,由幫助文件的作者指定給某個(gè)幫助主題的幫助上下文編號(hào)。如果已提供幫助主題的幫助上下文編號(hào)。如果已提供 context,則也必須要提,則也必須要提供供 helpfile。在由在由InputBoxInputBox顯示的對(duì)話(huà)框中,各參數(shù)的作用如圖顯示的對(duì)話(huà)框中,各參數(shù)的作用如圖5-45-4所示。所示。圖5-4 InputBox 函數(shù)對(duì)話(huà)框使用使用 InputBoxInputBox 函數(shù)時(shí)的注意事項(xiàng)如下:函數(shù)時(shí)的注意事項(xiàng)如下:(1

19、)執(zhí)行)執(zhí)行 InputBox 函數(shù)后,產(chǎn)生一個(gè)對(duì)話(huà)框,函數(shù)后,產(chǎn)生一個(gè)對(duì)話(huà)框,提示用戶(hù)輸入數(shù)據(jù),光標(biāo)位于對(duì)話(huà)框底部的輸提示用戶(hù)輸入數(shù)據(jù),光標(biāo)位于對(duì)話(huà)框底部的輸入?yún)^(qū)中。如果第三個(gè)參數(shù)入?yún)^(qū)中。如果第三個(gè)參數(shù)(Default)不省略,則不省略,則在輸入?yún)^(qū)中顯示該參數(shù)的值,此時(shí)如果按回車(chē)在輸入?yún)^(qū)中顯示該參數(shù)的值,此時(shí)如果按回車(chē)鍵或單擊對(duì)話(huà)框中的鍵或單擊對(duì)話(huà)框中的“確定確定”按鈕,則輸入該按鈕,則輸入該默認(rèn)值,并把它賦給一個(gè)變量;如果不想輸入默認(rèn)值,并把它賦給一個(gè)變量;如果不想輸入默認(rèn)值,則可直接鍵入所需要的數(shù)據(jù),然后按默認(rèn)值,則可直接鍵入所需要的數(shù)據(jù),然后按回車(chē)鍵或單擊回車(chē)鍵或單擊“確定確定”按鈕輸

20、入。按鈕輸入。(2)默認(rèn)情況下)默認(rèn)情況下 InputBox 函數(shù)返回的值是一個(gè)函數(shù)返回的值是一個(gè)字符串。因此在我們使用時(shí)應(yīng)該注意數(shù)據(jù)類(lèi)型字符串。因此在我們使用時(shí)應(yīng)該注意數(shù)據(jù)類(lèi)型的處理。的處理。(3)在執(zhí)行)在執(zhí)行 InputBox 函數(shù)所產(chǎn)生的對(duì)話(huà)函數(shù)所產(chǎn)生的對(duì)話(huà)框中,有兩個(gè)按鈕,一個(gè)是框中,有兩個(gè)按鈕,一個(gè)是“確定確定”,另一個(gè)是另一個(gè)是“取消取消”。在輸入?yún)^(qū)輸入數(shù)據(jù)。在輸入?yún)^(qū)輸入數(shù)據(jù)后,單擊后,單擊“確定確定”按鈕(或按下回車(chē)鍵按鈕(或按下回車(chē)鍵)表示確定,并返回輸入?yún)^(qū)中輸入的數(shù))表示確定,并返回輸入?yún)^(qū)中輸入的數(shù)據(jù);如果單擊據(jù);如果單擊“取消取消”按鈕(或按下按鈕(或按下 Esc 鍵),

21、則使當(dāng)前的輸入作廢,在這種情鍵),則使當(dāng)前的輸入作廢,在這種情況下,將返回一個(gè)空字符串。況下,將返回一個(gè)空字符串。(4)每執(zhí)行一次)每執(zhí)行一次 InputBox 函數(shù)只能輸入函數(shù)只能輸入一個(gè)值,如果需要輸入多個(gè)值,則必須一個(gè)值,如果需要輸入多個(gè)值,則必須多次調(diào)用多次調(diào)用InputBox 函數(shù)。函數(shù)。(5)和其他返回字符串的函數(shù)一樣,)和其他返回字符串的函數(shù)一樣,InputBox 函數(shù)也可以寫(xiě)成函數(shù)也可以寫(xiě)成 InputBox$ 的的形式,這兩種形式完全等價(jià)。形式,這兩種形式完全等價(jià)。例例5-3(參看教材(參看教材P58-60)5.3 5.3 MsgBoxMsgBox函數(shù)和函數(shù)和MsgBoxMs

22、gBox語(yǔ)句語(yǔ)句 Visual Basic是可視化的程序設(shè)計(jì)是可視化的程序設(shè)計(jì)語(yǔ)言,不管是要求用戶(hù)輸入數(shù)據(jù),或是語(yǔ)言,不管是要求用戶(hù)輸入數(shù)據(jù),或是顯示出即時(shí)的信息提示給用戶(hù),都可以顯示出即時(shí)的信息提示給用戶(hù),都可以使用對(duì)話(huà)框來(lái)實(shí)現(xiàn)人使用對(duì)話(huà)框來(lái)實(shí)現(xiàn)人機(jī)的交互。前面機(jī)的交互。前面我們講過(guò)了一種輸入對(duì)話(huà)框函數(shù)我們講過(guò)了一種輸入對(duì)話(huà)框函數(shù)InputBox,在這一小節(jié)里我們就來(lái)學(xué),在這一小節(jié)里我們就來(lái)學(xué)習(xí)顯示即時(shí)信息給用戶(hù)的習(xí)顯示即時(shí)信息給用戶(hù)的MsgBox函數(shù)函數(shù)和和MsgBox語(yǔ)句。語(yǔ)句。1.MsgBox1.MsgBox函數(shù)函數(shù) 在使用在使用Windows應(yīng)用程序時(shí),如果操作有應(yīng)用程序時(shí),如果操作

23、有誤,屏幕上會(huì)顯示一個(gè)對(duì)話(huà)框,讓用戶(hù)選擇,誤,屏幕上會(huì)顯示一個(gè)對(duì)話(huà)框,讓用戶(hù)選擇,然后根據(jù)用戶(hù)的選擇確定其后的操作,如果用然后根據(jù)用戶(hù)的選擇確定其后的操作,如果用戶(hù)不進(jìn)行選擇,應(yīng)用程序?qū)⒉荒芾^續(xù)執(zhí)行。戶(hù)不進(jìn)行選擇,應(yīng)用程序?qū)⒉荒芾^續(xù)執(zhí)行。 MsgBox函數(shù)的功能與此類(lèi)似,它可以向用函數(shù)的功能與此類(lèi)似,它可以向用戶(hù)傳送信息,通過(guò)用戶(hù)在對(duì)話(huà)框上的選擇接收戶(hù)傳送信息,通過(guò)用戶(hù)在對(duì)話(huà)框上的選擇接收用戶(hù)的響應(yīng),作為程序繼續(xù)執(zhí)行的依據(jù)。用戶(hù)的響應(yīng),作為程序繼續(xù)執(zhí)行的依據(jù)。MsgBox函數(shù)的格式為:函數(shù)的格式為: MsgBox (msg,type ,title,helpfile ,context) 該函數(shù)由

24、五個(gè)參數(shù),除第一個(gè)以外,其余該函數(shù)由五個(gè)參數(shù),除第一個(gè)以外,其余均為可選的。均為可選的。說(shuō)明:說(shuō)明:(1)msg :字符串,不超過(guò):字符串,不超過(guò)1024個(gè)字符。該內(nèi)個(gè)字符。該內(nèi)容將在產(chǎn)生的對(duì)話(huà)框內(nèi)顯示。注意可以用容將在產(chǎn)生的對(duì)話(huà)框內(nèi)顯示。注意可以用“Chr(13)+Chr(10)”強(qiáng)制換行。強(qiáng)制換行。(2)type :是一個(gè)整數(shù)值或符號(hào)常量,用來(lái)控:是一個(gè)整數(shù)值或符號(hào)常量,用來(lái)控制對(duì)話(huà)框內(nèi)顯示的按鈕,圖標(biāo)種類(lèi)及數(shù)量,該制對(duì)話(huà)框內(nèi)顯示的按鈕,圖標(biāo)種類(lèi)及數(shù)量,該參數(shù)由四類(lèi)值相加產(chǎn)生。這四類(lèi)值分別表示按參數(shù)由四類(lèi)值相加產(chǎn)生。這四類(lèi)值分別表示按鈕數(shù)目、圖標(biāo)類(lèi)型、默認(rèn)按鈕和強(qiáng)制返回,見(jiàn)鈕數(shù)目、圖標(biāo)類(lèi)型

25、、默認(rèn)按鈕和強(qiáng)制返回,見(jiàn)表表5-4、5-5、5-6、5-7。表5-4 數(shù)值05:對(duì)話(huà)框內(nèi)按鈕的類(lèi)型和數(shù)量符號(hào)常量符號(hào)常量值值描述描述VbOKOnly0只顯示 OK 按鈕。VbOKCancel 1顯示 OK 及 Cancel 按鈕。VbAbortRetryIgnore 2顯示 Abort、Retry 及 Ignore 按鈕。VbYesNoCancel 3顯示 Yes、No 及 Cancel 按鈕。VbYesNo4顯示 Yes 及 No 按鈕。VbRetryCancel5顯示 Retry 及 Cancel 按鈕表5-5 數(shù)值(16,32,48,64):對(duì)話(huà)框內(nèi)所顯示的圖標(biāo)類(lèi)型符號(hào)常量符號(hào)常量值值作

26、用作用VbCritical16顯示 Critical Message 圖標(biāo)(即顯示stop圖標(biāo))。VbQuestion 32顯示 Warning Query 圖標(biāo)(即顯示“?”圖標(biāo))。VbExclamation 48顯示 Warning Message 圖標(biāo)(即顯示“!”圖標(biāo))。VbInformation 64顯示Information Message 圖標(biāo)(即顯示“i”圖標(biāo)。表5-6 數(shù)值(0,256,512,768):指定默認(rèn)活動(dòng)按鈕符號(hào)常量符號(hào)常量值值作用作用vbDefaultButton10第一個(gè)按鈕是缺省值。vbDefaultButton2256第二個(gè)按鈕是缺省值。vbDefault

27、Button3512第三個(gè)按鈕是缺省值。vbDefaultButton4768第四個(gè)按鈕是缺省值。表5-7 數(shù)值(0,4096):分別用于應(yīng)用程序和系統(tǒng)返回符號(hào)常量符號(hào)常量 值值 作用作用vbApplicationModal0 應(yīng)用程序強(qiáng)制返回;應(yīng)用程序一直被掛起,直到用戶(hù)對(duì)消息框作出響應(yīng)才繼續(xù)工作。vbSystemModal 4096系統(tǒng)強(qiáng)制返回;全部應(yīng)用程序都被掛起,直到用戶(hù)對(duì)消息框作出響應(yīng)才繼續(xù)工作。 Type參數(shù)的值由這四類(lèi)值相加而成,一般取前三參數(shù)的值由這四類(lèi)值相加而成,一般取前三類(lèi)。例如:類(lèi)。例如: 16=0+16+0 表示在消息框中只顯示表示在消息框中只顯示“OK”按鈕按鈕;顯示

28、;顯示“stop”圖標(biāo);圖標(biāo);“OK”按鈕是默認(rèn)按鈕。按鈕是默認(rèn)按鈕。 34=2+32+0 表示在消息框中顯示表示在消息框中顯示“Abort”、“Retry”和和“Ignore”三個(gè)按鈕;顯示三個(gè)按鈕;顯示“?”圖標(biāo)。圖標(biāo)。 當(dāng)然當(dāng)然type參數(shù)的值也可以用符號(hào)常量來(lái)表示,例參數(shù)的值也可以用符號(hào)常量來(lái)表示,例如,如,type的值為的值為16就相當(dāng)于下面的表達(dá)式:就相當(dāng)于下面的表達(dá)式: vbOKOnly + vbCritical + vbDefaultButton1(3)title :是一個(gè)字符串,用來(lái)顯示對(duì)話(huà)框的:是一個(gè)字符串,用來(lái)顯示對(duì)話(huà)框的標(biāo)題。標(biāo)題。(4)helpfile,context

29、:和我們前面講到的輸入對(duì):和我們前面講到的輸入對(duì)話(huà)框的這兩個(gè)參數(shù)的用法和功能相同。話(huà)框的這兩個(gè)參數(shù)的用法和功能相同。 前面我們講到的前面我們講到的InputBox函數(shù)默認(rèn)返回的函數(shù)默認(rèn)返回的值是字符串類(lèi)型的,而值是字符串類(lèi)型的,而MsgBox函數(shù)返回的值函數(shù)返回的值是一個(gè)整數(shù),這個(gè)整數(shù)與用戶(hù)在消息框中選擇是一個(gè)整數(shù),這個(gè)整數(shù)與用戶(hù)在消息框中選擇的按鈕有關(guān)。由的按鈕有關(guān)。由MsgBox函數(shù)返回的消息框中函數(shù)返回的消息框中按鈕的類(lèi)型一共有按鈕的類(lèi)型一共有7種,所以函數(shù)返回的值也種,所以函數(shù)返回的值也有有7個(gè),分別為個(gè),分別為17的整數(shù),見(jiàn)表的整數(shù),見(jiàn)表5-8。表5-8 MsgBox函數(shù)的返回值常數(shù)

30、常數(shù) 值值 描述描述vbOK 1 OK(按下“確定”按鈕)vbCancel 2 Cancel(按下“取消”按鈕)vbAbort 3 Abort(按下“終止”按鈕)vbRetry 4 Retry(按下“重試”按鈕)vbIgnore 5 Ignore(按下“忽略”按鈕)vbYes 6 Yes(按下“是”按鈕)vbNo 7 No(按下“否”按鈕)例例5-4(參看教材(參看教材P62-63)2.MsgBox2.MsgBox語(yǔ)句語(yǔ)句 MsgBox函數(shù)也可以用函數(shù)也可以用MsgBox語(yǔ)句的形式語(yǔ)句的形式來(lái)表示。來(lái)表示。 格式:格式: MsgBox msg,type ,title,helpfile ,con

31、text 語(yǔ)句與函數(shù)用法相似,功能和參數(shù)的含義語(yǔ)句與函數(shù)用法相似,功能和參數(shù)的含義以及用法也都相同,語(yǔ)句和函數(shù)的最主要的區(qū)以及用法也都相同,語(yǔ)句和函數(shù)的最主要的區(qū)別是函數(shù)會(huì)返回函數(shù)值,而語(yǔ)句沒(méi)有。因此,別是函數(shù)會(huì)返回函數(shù)值,而語(yǔ)句沒(méi)有。因此,當(dāng)只是地顯示信息,不需要由該信息決定后繼當(dāng)只是地顯示信息,不需要由該信息決定后繼操作時(shí),用語(yǔ)句來(lái)完成就可以了。操作時(shí),用語(yǔ)句來(lái)完成就可以了。例例5-5(參看教材(參看教材P63) MsgBox函數(shù)和函數(shù)和MsgBox語(yǔ)句所顯示的對(duì)話(huà)框有一語(yǔ)句所顯示的對(duì)話(huà)框有一個(gè)共同的特點(diǎn):用戶(hù)必須作出響應(yīng),應(yīng)用程序才能繼個(gè)共同的特點(diǎn):用戶(hù)必須作出響應(yīng),應(yīng)用程序才能繼續(xù)執(zhí)行

32、。在續(xù)執(zhí)行。在Windows中象這樣的窗口(對(duì)話(huà)框)很普中象這樣的窗口(對(duì)話(huà)框)很普遍,在遍,在Visual Basic中專(zhuān)門(mén)給這類(lèi)窗口起了個(gè)名字中專(zhuān)門(mén)給這類(lèi)窗口起了個(gè)名字模態(tài)窗口(模態(tài)窗口(Modal Window)。當(dāng)程序運(yùn)行時(shí),模態(tài)窗)。當(dāng)程序運(yùn)行時(shí),模態(tài)窗口掛起應(yīng)用程序中的其他窗口的操作。一般來(lái)說(shuō),當(dāng)口掛起應(yīng)用程序中的其他窗口的操作。一般來(lái)說(shuō),當(dāng)屏幕上出現(xiàn)一個(gè)窗口(或?qū)υ?huà)框)時(shí),如果需要在響屏幕上出現(xiàn)一個(gè)窗口(或?qū)υ?huà)框)時(shí),如果需要在響應(yīng)該窗口中的提示后才能進(jìn)行其他操作,則該窗口應(yīng)應(yīng)該窗口中的提示后才能進(jìn)行其他操作,則該窗口應(yīng)該是模態(tài)窗口。該是模態(tài)窗口。 與模態(tài)窗口對(duì)應(yīng)的是非模態(tài)窗口(

33、與模態(tài)窗口對(duì)應(yīng)的是非模態(tài)窗口(Modalless Window),它允許對(duì)屏幕上的其他窗口進(jìn)行操作。),它允許對(duì)屏幕上的其他窗口進(jìn)行操作。MsgBox函數(shù)和函數(shù)和MsgBox語(yǔ)句所顯示的對(duì)話(huà)框都是模態(tài)語(yǔ)句所顯示的對(duì)話(huà)框都是模態(tài)窗口。窗口。5.4 5.4 打印機(jī)輸出打印機(jī)輸出 在日常生活中,我們經(jīng)常需要得到一在日常生活中,我們經(jīng)常需要得到一些文件的硬拷貝文件,這就要用到打印機(jī)些文件的硬拷貝文件,這就要用到打印機(jī)了。打印機(jī)是了。打印機(jī)是Visual Basic中的一個(gè)對(duì)象中的一個(gè)對(duì)象(Printer),如果想要把指定的信息輸出),如果想要把指定的信息輸出到打印機(jī)上,仍然可以使用到打印機(jī)上,仍然可以

34、使用Print方法,方法,只不過(guò)此時(shí)對(duì)象是打印機(jī)(只不過(guò)此時(shí)對(duì)象是打印機(jī)(Printer),而),而不是我們前面用到的窗體、圖片框或者立不是我們前面用到的窗體、圖片框或者立即窗口。即窗口。1 1 直接輸出直接輸出 所謂直接輸出,就是將信息直接送所謂直接輸出,就是將信息直接送到打印機(jī)。使用的是到打印機(jī)。使用的是Print方法,格式方法,格式為:為: Printer. Print表達(dá)式表表達(dá)式表 語(yǔ)句的執(zhí)行結(jié)果會(huì)把語(yǔ)句的執(zhí)行結(jié)果會(huì)把“表達(dá)式表表達(dá)式表”的值在打印機(jī)上打印出來(lái)。的值在打印機(jī)上打印出來(lái)。打印機(jī)對(duì)象的屬性和方法如下:打印機(jī)對(duì)象的屬性和方法如下:(1)Page屬性屬性設(shè)置頁(yè)號(hào)設(shè)置頁(yè)號(hào) 格式

35、為:格式為:Printer.Page 在應(yīng)用程序中可以用在應(yīng)用程序中可以用Page屬性打印頁(yè)號(hào)。屬性打印頁(yè)號(hào)。(2)NewPage方法方法強(qiáng)制換頁(yè)強(qiáng)制換頁(yè) 格式為:格式為:Printer.NewPage 打印時(shí),打印完一頁(yè)會(huì)自動(dòng)換頁(yè),使用打印時(shí),打印完一頁(yè)會(huì)自動(dòng)換頁(yè),使用NewPage方法方法可以實(shí)現(xiàn)強(qiáng)制換頁(yè)。可以實(shí)現(xiàn)強(qiáng)制換頁(yè)。(3)EndDoc方法方法結(jié)束打印結(jié)束打印 格式為:格式為:Printer.EndDoc EndDoc方法用來(lái)結(jié)束文件的打印,可以將所有尚未方法用來(lái)結(jié)束文件的打印,可以將所有尚未打印的信息都送出去。打印的信息都送出去。 (4)KillDoc方法方法 格式為:格式為:Pr

36、inter. KillDoc 用于立即終止當(dāng)前打印作業(yè)。如果操作系用于立即終止當(dāng)前打印作業(yè)。如果操作系統(tǒng)的打印管理器正在處理該打印作業(yè)(打印管統(tǒng)的打印管理器正在處理該打印作業(yè)(打印管理器正在運(yùn)行并且允許后臺(tái)打?。敲蠢砥髡谶\(yùn)行并且允許后臺(tái)打?。?,那么 KillDoc 將刪除當(dāng)前打印作業(yè)并且使打印機(jī)不將刪除當(dāng)前打印作業(yè)并且使打印機(jī)不接收任何信息。如果打印管理器不是正在在處接收任何信息。如果打印管理器不是正在在處理該打印作業(yè)(沒(méi)有選用后臺(tái)打印),部分或理該打印作業(yè)(沒(méi)有選用后臺(tái)打印),部分或全部數(shù)據(jù)可能在全部數(shù)據(jù)可能在 KillDoc 生效前已發(fā)送到打印生效前已發(fā)送到打印機(jī)。此時(shí),打印機(jī)驅(qū)動(dòng)程

37、序?qū)⒈M可能使打印機(jī)機(jī)。此時(shí),打印機(jī)驅(qū)動(dòng)程序?qū)⒈M可能使打印機(jī)復(fù)位并終止該打印作業(yè)。復(fù)位并終止該打印作業(yè)。2 2窗體輸出窗體輸出 直接輸出,可以將信息直接在打印直接輸出,可以將信息直接在打印機(jī)上打印出來(lái),但有可能浪廢紙張。采機(jī)上打印出來(lái),但有可能浪廢紙張。采用窗體輸出更適用。用窗體輸出更適用。 格式為:格式為: 窗體窗體.PrintForm 即先將信息送到窗體上,再用即先將信息送到窗體上,再用PrintForm方法把窗體上的內(nèi)容打印出方法把窗體上的內(nèi)容打印出來(lái)。來(lái)。說(shuō)明:說(shuō)明:(1)先修改,后打印,節(jié)約紙張和時(shí)間。)先修改,后打印,節(jié)約紙張和時(shí)間。(2)須將窗體的)須將窗體的AutoRedraw屬

38、性設(shè)置為屬性設(shè)置為T(mén)rue。(3)用)用PrintForm方法不僅可以打印窗體方法不僅可以打印窗體上的文本,而且還可以打印出窗體上的上的文本,而且還可以打印出窗體上的任何可見(jiàn)的控件及圖形。任何可見(jiàn)的控件及圖形。例例5-6(參看教材(參看教材P65)1聲明聲明 JSP聲明的作用是說(shuō)明將要使用的變聲明的作用是說(shuō)明將要使用的變量和方法,以保存信息或定義量和方法,以保存信息或定義JSP頁(yè)面可頁(yè)面可能需要調(diào)用的方法,其作為范圍是整個(gè)頁(yè)能需要調(diào)用的方法,其作為范圍是整個(gè)頁(yè)面。面。 因?yàn)橐驗(yàn)镴SP是基于是基于Java技術(shù)的,因此要技術(shù)的,因此要求像求像Java一樣,對(duì)于將要在一樣,對(duì)于將要在JSP程序中用程

39、序中用到的變量和方法,必須先進(jìn)行聲明,不然到的變量和方法,必須先進(jìn)行聲明,不然將會(huì)出錯(cuò)。在聲明元素中聲明的變量和方將會(huì)出錯(cuò)。在聲明元素中聲明的變量和方法,將在法,將在JSP頁(yè)面初始化時(shí)進(jìn)行初始化。頁(yè)面初始化時(shí)進(jìn)行初始化。2表達(dá)式表達(dá)式 表達(dá)式用于將表達(dá)式用于將JSP內(nèi)容轉(zhuǎn)換為字符串內(nèi)容轉(zhuǎn)換為字符串以便于包含在頁(yè)面的輸出中。表達(dá)式表示以便于包含在頁(yè)面的輸出中。表達(dá)式表示的是一個(gè)在腳本語(yǔ)言中被定義的表達(dá)式,的是一個(gè)在腳本語(yǔ)言中被定義的表達(dá)式,在運(yùn)行后被自動(dòng)轉(zhuǎn)化為字符串,然后插入在運(yùn)行后被自動(dòng)轉(zhuǎn)化為字符串,然后插入到這個(gè)表達(dá)式在到這個(gè)表達(dá)式在JSP文件中的位置顯示。文件中的位置顯示。因?yàn)楸磉_(dá)式的值已

40、經(jīng)被轉(zhuǎn)化為字符串,所因?yàn)楸磉_(dá)式的值已經(jīng)被轉(zhuǎn)化為字符串,所以能夠在一行文本中插入表達(dá)式。以能夠在一行文本中插入表達(dá)式。 表達(dá)式的使用格式如下:表達(dá)式的使用格式如下: 其中,其中,expression部分是表達(dá)式的內(nèi)容,部分是表達(dá)式的內(nèi)容,它是一個(gè)有計(jì)算結(jié)果的它是一個(gè)有計(jì)算結(jié)果的JSP表達(dá)式(注意,表達(dá)式(注意,表達(dá)式一定要有一個(gè)可以輸出的值),如表達(dá)式一定要有一個(gè)可以輸出的值),如數(shù)學(xué)計(jì)算式子、有返回值的函數(shù)、變量等。數(shù)學(xué)計(jì)算式子、有返回值的函數(shù)、變量等。3腳本片段腳本片段 腳本片段(腳本片段(Scriptlets)也稱(chēng)為代碼片)也稱(chēng)為代碼片段,它是一個(gè)有效的段,它是一個(gè)有效的Java程序段,是

41、程序段,是JSP中的代碼部分。在這個(gè)部分中可以使用幾中的代碼部分。在這個(gè)部分中可以使用幾乎任何乎任何Java的語(yǔ)法來(lái)編制程序,它是嵌放的語(yǔ)法來(lái)編制程序,它是嵌放在在標(biāo)記中的,語(yǔ)法格式如下:標(biāo)記中的,語(yǔ)法格式如下:4注釋注釋 注釋是程序設(shè)計(jì)中的常用工具,注釋注釋是程序設(shè)計(jì)中的常用工具,注釋通常有兩方面的作用:一個(gè)作用是作為提通常有兩方面的作用:一個(gè)作用是作為提示,讓人可以從注釋信息中了解某段程序示,讓人可以從注釋信息中了解某段程序的功能或設(shè)計(jì)思想,在閱讀的功能或設(shè)計(jì)思想,在閱讀/編寫(xiě)程序時(shí)提編寫(xiě)程序時(shí)提供參考信息;另一個(gè)作用是將未完成的或供參考信息;另一個(gè)作用是將未完成的或有錯(cuò)誤的某個(gè)程序塊通過(guò)

42、改為注釋而隱藏有錯(cuò)誤的某個(gè)程序塊通過(guò)改為注釋而隱藏起來(lái),使其暫時(shí)不參與程序的執(zhí)行,這種起來(lái),使其暫時(shí)不參與程序的執(zhí)行,這種方式也適用于程序調(diào)試,即將調(diào)試時(shí)編寫(xiě)方式也適用于程序調(diào)試,即將調(diào)試時(shí)編寫(xiě)的調(diào)試語(yǔ)句作為注釋隱藏起來(lái)。的調(diào)試語(yǔ)句作為注釋隱藏起來(lái)。 JSP中的注釋可以分為兩類(lèi):一類(lèi)是中的注釋可以分為兩類(lèi):一類(lèi)是輸出到客戶(hù)端,用戶(hù)在查看源文件時(shí)可以輸出到客戶(hù)端,用戶(hù)在查看源文件時(shí)可以看見(jiàn),另一類(lèi)是僅在服務(wù)器端,供開(kāi)發(fā)者看見(jiàn),另一類(lèi)是僅在服務(wù)器端,供開(kāi)發(fā)者使用的,這種注釋僅服務(wù)器端可見(jiàn),不會(huì)使用的,這種注釋僅服務(wù)器端可見(jiàn),不會(huì)發(fā)送到客戶(hù)端。發(fā)送到客戶(hù)端。1變量變量 變量是指在程序運(yùn)行過(guò)程中,值可以變量是指在程序運(yùn)行過(guò)程中,值可以發(fā)生變化的量。與發(fā)生變化的量。與Java一樣,一樣

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論