在 Access 桌面資料庫中,函數 MsgBox 會在對話方塊中顯示訊息,等待使用者選取按鈕,並傳回指出使用者選取哪個按鈕的訊息 Integer 。
語法
MsgBox(prompt[, buttons][, title][, helpfile][, context])
MsgBox函數語法具有下列引數:
| 引數 | 描述 |
|---|---|
prompt |
必要。 字串運算式顯示為對話方塊中的訊息。 的最大 prompt 長度約為 1024 個字元,視所用字元的寬度而定。 如果有多行,您可以使用 prompt 歸位字元 (Chr(13)) 、換行字元 (Chr(10)) ,或在每行之間) 使用歸位-換行 (Chr(13) & Chr(10) 組合來分隔行。 |
buttons |
可省略。 數值運算式,是指定要顯示之按鈕數目和類型、要使用的圖示樣式、預設按鈕的識別,以及訊息方塊形式之值的總和。 如果省略,則預設 buttons 值為 0。 |
title |
可省略。 顯示在對話方塊標題列中的字串運算式。 如果您省 title略 ,應用程式名稱會顯示在標題列中。 |
helpfile |
可省略。 字串運算式,用於識別說明檔案,用來為對話方塊提供即時線上說明。 如果提供,context也helpfile必須提供。 |
context |
可省略。 數值運算式,即說明作者指派給適當 [說明] 主題的說明內容編號。 如果提供,helpfile也context必須提供。 |
設定
buttons引數設定如下:
| 常數 | 值 | 描述 |
|---|---|---|
vbOKOnly |
0 |
僅顯示 正常 。 |
vbOKCancel |
1 |
顯示 [確定 ] 和 [取消]。 |
vbAbortRetryIgnore |
2 |
顯示中 止、 重試和 忽略。 |
vbYesNoCancel |
3 |
顯示 [是]、[ 否] 和 [取消]。 |
vbYesNo |
4 |
顯示 是 與 否。 |
vbRetryCancel |
5 |
顯示 重試 和 取消。 |
vbCritical |
16 |
顯示 重大訊息 圖示。 |
vbQuestion |
32 |
顯示 [警告查詢 ] 圖示。 |
vbExclamation |
48 |
顯示 警告訊息 圖示。 |
vbInformation |
64 |
顯示 資訊訊息 圖示。 |
vbDefaultButton1 |
0 |
將第一個按鈕設為預設值。 |
vbDefaultButton2 |
256 |
將第二個按鈕設為預設值。 |
vbDefaultButton3 |
512 |
將第三個按鈕設為預設值。 |
vbDefaultButton4 |
768 |
將第四個按鈕設為預設值。 |
vbApplicationModal |
0 |
應用程式強制回應。 使用者必須先回應訊息方塊,才能繼續在目前的應用程式中工作。 |
vbSystemModal |
4096 |
系統強制回應。 所有應用程式都會暫停,直到使用者回應訊息方塊為止。 |
vbMsgBoxHelpButton |
16384 |
新增 [說明 ] 按鈕至訊息方塊。 |
VbMsgBoxSetForeground |
65536 |
將訊息方塊視窗指定為前景視窗。 |
vbMsgBoxRight |
524288 |
將文字靠右對齊。 |
vbMsgBoxRtlReading |
1048576 |
使文字在希伯來文和阿拉伯文系統上以從右至左閱讀的方式顯示。 |
第一組值 (0 到 5) 描述對話方塊中顯示的按鈕數目和類型。 第二組 (16、 32、 48) 64 描述圖示樣式。 第三組 (0, 256, 512) 會決定哪個按鈕為預設值。 第四組 (0, 4096) 決定訊息方塊的模態。 當您將數字相加以建立引數的 buttons 最終值時,請僅使用每個群組中的一個數字。
注意
這些常數是由 Visual Basic for Applications 所指定。 因此,您可以在程式碼中的任何位置使用名稱,而不使用實際值。
傳回值
| 常數 | 值 | 描述 |
|---|---|---|
vbOK |
1 |
確定 |
vbCancel |
2 |
取消 |
vbAbort |
3 |
中止 |
vbRetry |
4 |
重試 |
vbIgnore |
5 |
忽略 |
vbYes |
6 |
是 |
vbNo |
7 |
否 |
註解
同時提供 和 context 時helpfile,使用者可以按 Windows 中的 F1或 macOS 中的說明,檢視符合context的說明主題。 某些主機應用程式,例如 Microsoft Excel,也會自動在對話方塊中新增 [ 說明 ] 按鈕。
如果對話方塊顯示 [取消 ] 按鈕,按 Esc 與選取 [取消] 的效果相同。 如果對話方塊包含 [說明 ] 按鈕,則會為對話方塊提供即時線上說明。 不過,在使用者選取其他按鈕之前,不會傳回任何值。
注意
若要指定第一個引數以上,您必須 MsgBox 在運算式中使用。 若要省略某些位置引數,您必須包含對應的逗點分隔符號。
範例
注意
下列範例示範如何在 Visual Basic for Applications (VBA) 模組中使用此函數。
此範例會使用此 MsgBox 函數,在具有 [ 是 ] 與 [否 ] 按鈕的對話方塊中顯示嚴重錯誤訊息。 已將 [否 ] 按鈕指定為預設回應。 函數傳 MsgBox 回的值取決於使用者選取的按鈕。 此範例假設 說明 DEMO.HLP 檔案包含說明內容編號 1000等於 的主題。
Dim Msg, Style, Title, Help, Ctxt, Response, MyString
Msg = "Do you want to continue?"
Style = vbYesNo + vbCritical + vbDefaultButton2
Title = "MsgBox Demonstration"
Help = "DEMO.HLP"
Ctxt = 1000
Response = MsgBox(Msg, Style, Title, Help, Ctxt)
If Response = vbYes Then ' User chose Yes.
MyString = "Yes" ' Perform some action.
Else ' User chose No.
MyString = "No" ' Perform some action.
End If