More Related Content Similar to 新觀念的VB6教本ch04 (20) 新觀念的VB6教本ch0413. 把程式放到命令鈕裡把程式放到命令鈕裡 (2)(2)
33 .. 在在 Private Sub Command1_Click()Private Sub Command1_Click() 及及 EndEnd
SubSub 之間輸入計算標準體重的程式之間輸入計算標準體重的程式
把程式輸入在
Private Sub Command1_Click() 與
End Sub 之間
14. 執行命令鈕裡面的程式執行命令鈕裡面的程式
按下工具列的按下工具列的開始開始命令鈕 ,先 動啟命令鈕 ,先 動啟 VBVB 應用程應用程
式的執行。式的執行。
此時可以看到我們在表單上 置的命令鈕,按佈此時可以看到我們在表單上 置的命令鈕,按佈
下命令鈕方可 動程式的執行。啟下命令鈕方可 動程式的執行。啟
¡@Private Sub Command1_Click()
¡@¡@¡@H = 175
¡@¡@¡@W = H - 105
¡@¡@¡@Print " 標準體重 ="; W
¡@End Sub
動執行啟
列印
結果
按下
15. 輸入程式的注意事項輸入程式的注意事項
把程式寫在把程式寫在 Private SubPrivate Sub 及及 End SubEnd Sub 之間。之間。
Private Sub Command1_Click()Private Sub Command1_Click() 中的中的 Command1Command1
會隨著被雙按會隨著被雙按
的命令鈕名稱的命令鈕名稱
來改變。來改變。
不要改變不要改變物件盒物件盒
中的選擇。中的選擇。
不要改變不要改變程序盒程序盒
中的選擇。中的選擇。
物件盒 程序盒
這個名稱等於
被雙按的命令鈕名稱
16. 設計的觀念設計的觀念
在表單上 置命令鈕,用的是表單的設佈在表單上 置命令鈕,用的是表單的設佈
計計觀念。觀念。
在命令鈕裡面撰寫程式,用的是程式的在命令鈕裡面撰寫程式,用的是程式的
設計設計觀念。觀念。
利用即時運算視窗來執行利用即時運算視窗來執行 VBVB 的敘述,的敘述,
雖然不具有設計的觀念雖然不具有設計的觀念 ,, 卻卻是一個很好是一個很好
的試驗場。的試驗場。
20. 表單輸出的注意事項表單輸出的注意事項 ---- CLSCLS 敘敘
述述
在原表單上再 置另一個命令鈕,然後在命佈
令鈕裡面寫入 CLS 敘述,如下:
Private Sub Command2_Click()
Cls ' 清除表單
End Sub
Cls 雖然會把表單清除乾淨,但仍會保留
表單上的控制元件,所以執行 Cls 敘述
之後,計算標準體重命令鈕還是可以繼
續操作。
21. AutoRedraw(AutoRedraw( 自動重繪自動重繪 )) 屬性屬性
把這個屬性設定為把這個屬性設定為 TrueTrue 時,將來即使表單曾時,將來即使表單曾
經被覆蓋住,只要它回到螢幕的最前端,先前經被覆蓋住,只要它回到螢幕的最前端,先前
PrintPrint 敘述所輸出的文字,都一律會在原來的位敘述所輸出的文字,都一律會在原來的位
置重新輸出一遍,以恢復原有的風貌。置重新輸出一遍,以恢復原有的風貌。
曾經被覆蓋的區域
27. 設定物件屬性的敘述 –設定物件屬性的敘述 – Step 2Step 2
雙按第一個命令鈕雙按第一個命令鈕 (Command1)(Command1) ,調出程,調出程
式視窗,然後在式視窗,然後在 Private SubPrivate Sub
Command1_ClickCommand1_Click 與與 End SubEnd Sub 之間輸入以之間輸入以
下程式:下程式:
Private Sub Command1_Click()
Label1.Caption = "Visual Basic 6.0"
End Sub
28. 設定物件屬性的敘述 –設定物件屬性的敘述 – Step 3Step 3
仿照步驟仿照步驟 22 的方法,分別在的方法,分別在 Command2Command2
及及 Command3Command3 命令鈕之中輸入以下程式命令鈕之中輸入以下程式
::
Private Sub Command2_Click()
Label1.BorderStyle = 1
End Sub
Private Sub Command3_Click()
Label1.AutoSize = True
End Sub
29. 設定物件屬性的敘述 –設定物件屬性的敘述 – Step 4Step 4
按開始命令鈕執行程式,然後依序按下按開始命令鈕執行程式,然後依序按下
Command1Command1 、、 Command2Command2 、、 Command3Command3
命令鈕,結果變化如下:命令鈕,結果變化如下:
Label1.AutoSize= True
Label1.BorderStyle= 1
Label1.Caption = "Visual Basic 6.0"
執行
執行
執行
結果
結果
結果
31. 物件名物件名 ‧‧ 屬性名屬性名 == 屬性值屬性值
設定物件屬性的敘述:設定物件屬性的敘述:
Label1.Caption = "Visual Basic 6.0"Label1.Caption = "Visual Basic 6.0"
1.物件名 2.屬性名
Label 1‧ Capt i on "Vi sual Basi c 6. 0"=
3.屬性值
33. 設定物件屬性的敘述設定物件屬性的敘述 ---- 鍵盤輸入型鍵盤輸入型
輸入文字型在取得屬性 之後,必須在屬值輸入文字型在取得屬性 之後,必須在屬值
性 的前後加上雙引號。值性 的前後加上雙引號。值
輸入數字型則直接取下屬性 即可值輸入數字型則直接取下屬性 即可值 。。
輸入文字型
輸入數字型
Label 1. Capt i on = "Vi sual Basi c 6. 0"
Label 1. Lef t = 2400
前後加上雙引號
直接取下來
35. Label 1. BackCol or =&H8000000F&
Label 1. Aut oSi ze=Tr ue
設定物件屬性的敘述設定物件屬性的敘述 ---- 直接選取型直接選取型
(2)(2)
如果屬性值中並未含有備註文字則直接取下即可
36. 設定物件屬性的敘述設定物件屬性的敘述 ---- 直接選取型直接選取型 (3)(3)
屬性視窗太小了,
只看到 &H800000
拉大屬性視窗之後, 才發現
屬性 等於 &H8000000F&值
檢查您的屬性視窗是否縮得太小了,如果您把檢查您的屬性視窗是否縮得太小了,如果您把
屬性視窗縮得太小了,從屬性視窗取下屬性值屬性視窗縮得太小了,從屬性視窗取下屬性值
時,可能會漏取了後面的幾位數時,可能會漏取了後面的幾位數 ..
38. 交談窗之功能交談窗之功能 副屬性名稱副屬性名稱 意 義意 義 說 明說 明
字型字型 NameName
名稱名稱 ArialArial 、新細明體 等、新細明體 等
大小大小 SizeSize
大小大小 99 、、 1010 、、 1212 等等
字型樣式字型樣式 BoldBold
ItalicItalic
粗體粗體
斜體斜體
TrueTrue 表示粗體表示粗體
TrueTrue 表示斜體表示斜體
效果效果 UnderlineUnderline
StrikethroughStrikethrough
底線底線
取消線取消線
TrueTrue 表示底線表示底線
TrueTrue 表示取消線表示取消線
設定物件屬性的敘述設定物件屬性的敘述 ---- 交談窗型交談窗型
Font(Font( 字型字型 )) 的設定的設定 (2)(2)
Font 的副屬性名稱一覽表
40. 粗體粗體 Label1.Font.Bold = TrueLabel1.Font.Bold = True
斜體斜體 Label1.Font.Italic = TrueLabel1.Font.Italic = True
標準標準
Label1.Font.Bold = FalseLabel1.Font.Bold = False '' FalseFalse 表示不要加粗表示不要加粗
Label1.Font.Italic = FalseLabel1.Font.Italic = False '' FalseFalse 表示不要斜體表示不要斜體
粗斜體粗斜體
Label1.Font.Bold = TrueLabel1.Font.Bold = True '' 加粗加粗
Label1.Font.Italic = TrueLabel1.Font.Italic = True '' 斜體斜體
取消線取消線 Label1.Font.Strikethrough = TrueLabel1.Font.Strikethrough = True '' 加刪除線加刪除線
底線底線 Label1.Font.Underline = TrueLabel1.Font.Underline = True '' 加底線加底線
設定物件屬性的敘述設定物件屬性的敘述 ---- 交談窗型交談窗型
Font(Font( 字型字型 )) 的設定的設定 (4)(4)
41. 藉助藉助 VBVB 所提供的所提供的 LoadPictureLoadPicture 函數。函數。
設定格式:設定格式:
SetSet 物件名物件名 .Picture = LoadPicture(.Picture = LoadPicture( 圖片 名檔圖片 名檔
))
例如:例如:
Set Form1.Picture =Set Form1.Picture =
LoadPicture( "C:windowssetup.bmp" )LoadPicture( "C:windowssetup.bmp" )
LoadPictureLoadPicture 函數可讀取的圖片 有檔函數可讀取的圖片 有檔 .bmp.bmp 、、 .dib.dib 、、
.wmf.wmf 、、 .ico.ico 、、 .cur.cur 、、 .gif.gif 、、 .jpg.jpg 等多種。等多種。
設定物件屬性的敘述設定物件屬性的敘述 ---- 交談窗型交談窗型
Picture(Picture( 圖片圖片 )) 的設定的設定 (1)(1)
43. PicturePicture 屬性實例屬性實例 (p.110)(p.110)
我們要在表單上 置一個影像框及兩個命令鈕佈我們要在表單上 置一個影像框及兩個命令鈕佈
,而程式執行之後,若按下第一個命令鈕,則,而程式執行之後,若按下第一個命令鈕,則
載入圖片設定給影像框,若按下第二個命令鈕載入圖片設定給影像框,若按下第二個命令鈕
,則將影像框的圖片設定給表單。,則將影像框的圖片設定給表單。
按下 Command1 之後
按下 Command2 之後
45. 在在 Command1Command1 命令鈕之中撰寫以下程式命令鈕之中撰寫以下程式
::
PicturePicture 屬性實例 –屬性實例 – Step 2Step 2
Private Sub Command1_Click()
Set Image1.Picture = LoadPicture("c:vb6bookch04USA.wmf")
End Sub
46. PicturePicture 屬性實例 –屬性實例 – Step 3Step 3
在在 Command2Command2 命令鈕之中撰寫以下程式命令鈕之中撰寫以下程式
::
Private Sub Command2_Click()
Set Form1.Picture = Image1.Picture
End Sub
47. PicturePicture 屬性實例 –屬性實例 – Step 4Step 4
最後執行程式,按下最後執行程式,按下 Command1Command1 命令鈕之後,可命令鈕之後,可
看到看到 Image1Image1 影像框中顯示出美國國旗圖片,再按影像框中顯示出美國國旗圖片,再按
下下 Command2Command2 命令鈕,可看到表單上也顯示出美命令鈕,可看到表單上也顯示出美
國國旗圖片,如下圖:國國旗圖片,如下圖:
按下 Command1 之後
按下 Command2 之後
50. 訊息窗訊息窗 (MsgBox)(MsgBox) (2)(2)
抬 頭抬 頭:通常用來顯示程式名稱,也就:通常用來顯示程式名稱,也就
是告訴使用者這個訊息窗是 一個程式哪是告訴使用者這個訊息窗是 一個程式哪
顯示出來的。顯示出來的。
訊息內容訊息內容:程式想告訴使用者的訊息。:程式想告訴使用者的訊息。
圖 示圖 示:提醒使用者注意的示意圖。:提醒使用者注意的示意圖。
回覆按鈕回覆按鈕:使用者回覆這個訊息的按鈕:使用者回覆這個訊息的按鈕
,如果使用者不按下按鈕,則訊息窗會,如果使用者不按下按鈕,則訊息窗會
一直保留在螢幕上。一直保留在螢幕上。
51. 格式 :格式 :
MsgBoxMsgBox 訊息內容訊息內容
例子:例子:
MsgBox "MsgBox " 使用訊息窗使用訊息窗 !"!"
MsgBox –MsgBox – 最簡單的格式最簡單的格式
訊息內容
抬頭及回覆按鈕
由 VB內定
52. vbOKCancel
MsgBox --MsgBox -- 設定回覆按鈕設定回覆按鈕 (1)(1)
格式 :格式 :
MsgBoxMsgBox 訊息內容訊息內容 ,, 回覆按鈕設定值回覆按鈕設定值
例子:例子:
MsgBox "MsgBox " 設定回覆按鈕的訊息窗設定回覆按鈕的訊息窗 !", vbOKCancel!", vbOKCancel
53. MsgBox --MsgBox -- 設定回覆按鈕設定回覆按鈕 (2)(2)
回覆按鈕設定值回覆按鈕設定值 ::
設定值設定值
設定 之常數符號值設定 之常數符號值 回覆按鈕回覆按鈕
00 vbOKOnlyvbOKOnly
11 vbOKCancelvbOKCancel
22 vbAbortRetryIgnorevbAbortRetryIgnore
33 vbYesNoCancelvbYesNoCancel
44 vbYesNovbYesNo
55 vbRetryCancelvbRetryCancel
54. MsgBox --MsgBox -- 設定圖示設定圖示 (1)(1)
格式 :格式 :
MsgBoxMsgBox 訊息內容訊息內容 ,, 圖示設定值圖示設定值
例子:例子:
MsgBox "MsgBox " 設定圖示的訊息窗設定圖示的訊息窗 !", vbInformation!", vbInformation
vbI nf or mat i on
55. MsgBox --MsgBox -- 設定圖示設定圖示 (2)(2)
設定值設定值 設定 之常數符號值設定 之常數符號值 圖示圖示
1616 vbCriticalvbCritical
3232 vbQuestionvbQuestion
4848 vbExclamationvbExclamation
6464 vbInformationvbInformation
圖示設定值
56. MsgBox --MsgBox -- 同時設定回覆按鈕及圖示同時設定回覆按鈕及圖示
MsgBoxMsgBox 訊息內容訊息內容 ,, 回覆按鈕設定值回覆按鈕設定值 ++ 圖示設圖示設
定值定值
MsgBox "MsgBox " 喜歡訊息窗 ?嗎喜歡訊息窗 ?嗎 ", vbYesNo +", vbYesNo +
vbQuestionvbQuestion
vbYesNo
vbQuesti on
57. MsgBox --MsgBox -- 設定抬頭設定抬頭
格式一:格式一:
MsgBoxMsgBox 訊息內容訊息內容 ,, 回覆按鈕設定值回覆按鈕設定值 ++ 圖示設定值圖示設定值 ,,
抬頭抬頭
格式二:格式二:
MsgBoxMsgBox 訊息內容訊息內容 ,,,, 抬頭抬頭
例子:例子:
MsgBox "MsgBox " 抬頭真好抬頭真好 !",, "!",, " 禮義廉恥禮義廉恥 ""
58. MsgBox --MsgBox -- 通用格式通用格式
其中參數二、三以其中參數二、三以 [][] 括起來,表示這兩括起來,表示這兩
個參數是可以省略的個參數是可以省略的 。。
又參數二含有兩個部份,可以擇一或兩又參數二含有兩個部份,可以擇一或兩
者皆設定之。者皆設定之。
MsgBox 訊息內容 [ , 回覆按鈕設定 +圖示設定 ] [ , 抬頭]值 值
參數1 參數2 參數3
59. MsgBox --MsgBox -- 顯示多行訊息內容顯示多行訊息內容
有時候我們想顯示多行的訊息內容,則可在行有時候我們想顯示多行的訊息內容,則可在行
與行之間插入與行之間插入 Chr(13)Chr(13) 的跳行字元,例如:的跳行字元,例如:
跳行字元
Ms gBox "這是第一行" + Chr ( 13) + "這是第二行"
60. MsgBoxMsgBox 函數函數
格式:格式: X = MsgBox(X = MsgBox( 參數串列參數串列 ))
傳回值傳回值 XX 是由使用者按下 一個回覆按鈕來決定哪是由使用者按下 一個回覆按鈕來決定哪
按鈕按鈕 傳回值傳回值 傳回 之常數符號值傳回 之常數符號值
11 vbOKvbOK
22 vbCancelvbCancel
33 vbAbortvbAbort
44 vbRetryvbRetry
55 vbIgnorevbIgnore
66 vbYesvbYes
77 vbNovbNo
62. MsgBoxMsgBox 函數的函數的例子(例子( 22 ))
X = MsgBox("X = MsgBox(" 星期六一起看場電影好嗎?星期六一起看場電影好嗎? ",",
vbYesNo + vbQuestion)vbYesNo + vbQuestion)
If X = vbYes ThenIf X = vbYes Then
MsgBox "MsgBox " 太好了!太好了! ""
ElseElse
MsgBox "MsgBox " 啊!啊! ..."..."
End IfEnd If
65. 物件物件 屬性屬性 屬性值屬性值
Form1Form1 CaptionCaption
請選擇 想去觀光的國家您請選擇 想去觀光的國家您
Command1Command1 CaptionCaption
美國美國
StyleStyle
1 -1 - 圖片外觀圖片外觀
PicturePicture
本書本書 ch04ch04 目錄的目錄的 USA.wmfUSA.wmf
Command2Command2 CaptionCaption
加拿大加拿大
StyleStyle
1 -1 - 圖片外觀圖片外觀
PicturePicture
本書本書 ch04ch04 目錄的目錄的
Canada.wmfCanada.wmf
Command3Command3 CaptionCaption
法國法國
StyleStyle
1 -1 - 圖片外觀圖片外觀
PicturePicture
本書本書 ch04ch04 目錄的目錄的
France.wmfFrance.wmf
Command4Command4 CaptionCaption
日本日本
訊息窗與顯示圖片實例訊息窗與顯示圖片實例 -- Step1-2-- Step1-2
66. 程式設計程式設計:分別在:分別在
Command1Command1 、、 Command2Command2 、、 Command3Command3 、及、及
Command4Command4 命令鈕之中撰寫以下程式:命令鈕之中撰寫以下程式:
訊息窗與顯示圖片實例 –訊息窗與顯示圖片實例 – Step2-1Step2-1
Private SubPrivate Sub Command1Command1 _Click()_Click() '' 「美國」命令鈕「美國」命令鈕
MsgBox "MsgBox " 您想去觀光的國家是您想去觀光的國家是 : " +: " + Command1Command1 .Caption, vbInformation.Caption, vbInformation
Set Form1.Picture =Set Form1.Picture = Command1Command1 .Picture.Picture
End SubEnd Sub
Private SubPrivate Sub Command2Command2 _Click()_Click() '' 「加拿大」命令鈕「加拿大」命令鈕
MsgBox "MsgBox " 您想去觀光的國家是您想去觀光的國家是 : " +: " + Command2Command2 .Caption, vbInformation.Caption, vbInformation
Set Form1.Picture =Set Form1.Picture = Command2Command2 .Picture.Picture
End SubEnd Sub
67. 訊息窗與顯示圖片實例 –訊息窗與顯示圖片實例 – Step2-2Step2-2
Private SubPrivate Sub Command3Command3_Click()_Click() '' 「法國」命令鈕「法國」命令鈕
MsgBox "MsgBox " 您想去觀光的國家是您想去觀光的國家是 : " +: " + Command3Command3.Caption,.Caption,
vbInformationvbInformation
Set Form1.Picture =Set Form1.Picture = Command3Command3.Picture.Picture
End SubEnd Sub
Private SubPrivate Sub Command4Command4_Click()_Click() '' 「日本」命令鈕「日本」命令鈕
MsgBox "MsgBox " 您想去觀光的國家是您想去觀光的國家是 : " + Command4.Caption,: " + Command4.Caption,
vbInformationvbInformation
Set Form1.Picture =Set Form1.Picture = Command4Command4.Picture.Picture
End SubEnd Sub
69. X=I nputBox( "請輸入身高", "計算標準體重", "175")
修改輸入欄的內容後,按 確定鈕即
傳回輸入欄的內容,但如果按 取消
鈕,則傳回空字串。
輸入窗輸入窗 (InputBox)(InputBox) 的例子的例子
X = InputBox( " 請輸入身高 " ) ' 省略後面兩個參數
X = InputBox( " 請輸入身高 ",, "175" ) ' 省略抬頭
X = InputBox( " 請輸入身高 ", " 計算標準體重 " ) ' 省略輸入欄預
70. 使用使用 InputBoxInputBox 的注意事項的注意事項
InputBoxInputBox 的傳回 是值的傳回 是值 字串字串,當我們利用它來輸入,當我們利用它來輸入
數 資料值數 資料值 時,要特別注意資料運算的問題時,要特別注意資料運算的問題 。。
正確的方法如下:正確的方法如下:
A = InputBox("A = InputBox(" 請輸入請輸入 AA 值值 ")")
B = InputBox("B = InputBox(" 請輸入請輸入 BB 值值 ")")
A =A = ValVal(A) '(A) ' 將將 AA 轉換成轉換成數值數值資料,再指定給資料,再指定給
AA
B =B = ValVal(B) '(B) ' 將將 BB 轉換成轉換成數值數值資料,再指定給資料,再指定給
BB
72. 輸入窗實例輸入窗實例 -- Step 1-- Step 1
在表單上 置好佈在表單上 置好佈 Command1Command1 命令鈕,並命令鈕,並
且將其且將其 CaptionCaption 屬性設定成屬性設定成 ““計算平均分計算平均分
數數””。。
73. 輸入窗實例輸入窗實例 -- Step 2-- Step 2
在在 Command1Command1 之中撰寫以下程式:之中撰寫以下程式:
Private Sub Command1_Click()Private Sub Command1_Click()
A = Val(InputBox("A = Val(InputBox(" 請輸入請輸入 [[ 數學數學 ]] 成成
績績 "))"))
B = Val(InputBox("B = Val(InputBox(" 請輸入請輸入 [[ 英文英文 ]] 成成
績績 "))"))
C = Val(InputBox("C = Val(InputBox(" 請輸入請輸入 [[ 國文國文 ]] 成成
績績 "))"))
Print "Print " 平均分數平均分數 ="; (A + B + C) / 3="; (A + B + C) / 3