當(dāng)你顯示只有一個按鈕的信息框時,可以點擊確定按鈕或者回車鍵將信息框從屏幕上移除,然而,當(dāng)信息框有兩個或以上的按鈕時,你的程序需要知道按的是哪個按鈕。你可以將信息框結(jié)果儲存在一個變量上來實現(xiàn)。表4-2 顯示了MsgBox函數(shù)返回值。

表4-2 MsgBox函數(shù)返回值
MsgYesNo3過程是MsgYesNo2過程修改后的版本,示范如何確定用戶按下的是哪個按鈕:
Sub MsgYesNo3()
Dim question As String
Dim myButtons As Integer
Dim myTitle As String
Dim myChoice As Integer
question = "Do you want to open a new workbook?"
myButtons = vbYesNo + vbQuestion + vbDefaultButton2
myTitle = "New workbook"
myChoice = MsgBox(question, myButtons, myTitle)
MsgBox myChoice
End Sub
在上面的過程里,你將MsgBox函數(shù)的結(jié)果賦給變量myChoice。注意,現(xiàn)在,MsgBox函數(shù)的參數(shù)列在括號里面:
myChoice = MsgBox(question, myButtons, myTitle)
當(dāng)你運行MsgYesNo3時,出現(xiàn)帶有兩個按鈕的信息框,當(dāng)你點擊“是”時,MsgBoxmyChoice將顯示數(shù)字6;當(dāng)點擊“否”則得到數(shù)字7。你將在第五章里面學(xué)習(xí)如果讓程序根據(jù)按鈕的選擇進(jìn)行不同的任務(wù)。
技巧:函數(shù)——使用還是不使用括號?
當(dāng)你需要使用MsgBox函數(shù)返回的結(jié)果時,需要使用括號將該函數(shù)的參數(shù)包括起來。不使用括號,意味著你告訴VB你將忽略該函數(shù)的結(jié)果。當(dāng)MsgBox函數(shù)包含兩個或以上的按鈕時,你很可能想要使用該函數(shù)的結(jié)果。
更多建議: