MessageBoxIndirectA 函式 (winuser.h)

建立、顯示及操作訊息方塊。 訊息方塊包含應用程式定義的郵件內文和標題、任何圖示,以及預先定義按鈕的任何組合。

語法

int MessageBoxIndirectA(
  [in] const MSGBOXPARAMSA *lpmbp
);

參數

[in] lpmbp

類型: const LPMSGBOXPARAMS

MSGBOXPARAMS結構的指標,其中包含用來顯示訊息方塊的資訊。

傳回值

類型: int

如果函式成功,傳回值就是下列其中一個功能表項目值。

如果訊息方塊有[取消] 按鈕,則函式會在按下 ESC 鍵或選取 [取消]按鈕時傳回IDCANCEL值。 如果訊息方塊沒有 [取消] 按鈕,按下 ESC 不會有任何作用。

如果記憶體不足,無法建立訊息方塊,則傳回值為零。

傳回碼/值 描述
IDABORT
3
已選取 [中止] 按鈕。
IDCANCEL
2
已選取 [取消] 按鈕。
IDCONTINUE
11
已選取 [ 繼續 ] 按鈕。
IDIGNORE
5
已選取 [忽略] 按鈕。
IDNO
7
已選取 [否] 按鈕。
IDOK
1
已選取 [ 確定 ] 按鈕。
IDRETRY
4
已選取 [重試] 按鈕。
IDTRYAGAIN
10
已選取 [重試] 按鈕。
IDYES
6
已選取 [ ] 按鈕。

備註

當您使用系統強制回應訊息框來指出系統記憶體不足時,MSGBOXPARAMS結構的lpszText 和 lpszCaption成員所指向的字串不應從資源檔取得,因為嘗試載入資源可能會失敗。

如果您在對話方塊存在時建立訊息方塊,請使用對話方塊的控制碼做為 hWnd 參數。 hWnd參數不應該識別子視窗,例如對話方塊中的控制項。

注意

winuser.h 標頭會將 MessageBoxIndirect 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程式碼,可能會導致編譯或執行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例

規格需求

   
最低支援的用戶端 Windows 2000 專業版 [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平台 Windows
標頭 winuser.h (包括 Windows.h)
程式庫 User32.lib
Dll User32.dll
API 集合 ext-ms-win-ntuser-dialogbox-l1-1-0 (在 Windows 8)

另請參閱

概念

對話方塊

MSGBOXPARAMS

MessageBox

MessageBoxEx

參考