DialogBoxA 巨集 (winuser.h)
從對話框範本資源建立強制響應對話方塊。 DialogBox 不會傳回控件,直到指定的回呼函式呼叫 endDialog 函式,以終止強制回應對話方塊。
DialogBox 會實作為呼叫 dialogBoxParam 函式的呼叫。
語法
void DialogBoxA(
[in, optional] hInstance,
[in] lpTemplate,
[in, optional] hWndParent,
[in, optional] lpDialogFunc
);
參數
[in, optional] hInstance
類型:HINSTANCE
包含對話框範本之模組的句柄。 如果此參數為 NULL,則會使用目前的可執行檔。
[in] lpTemplate
類型:LPCTSTR
對話框範本。 這個參數是 Null 終止字元字串的指標,指定對話框範本的名稱,或是指定對話框範本之資源識別碼的整數值。 如果參數指定資源標識元,則其高序字必須是零,且低序字必須包含標識符。 您可以使用 MAKEINTRESOURCE 巨集來建立此值。
[in, optional] hWndParent
類型:HWND
擁有對話框之視窗的句柄。
[in, optional] lpDialogFunc
類型:DLGPROC
對話框程式的指標。 如需對話框程式的詳細資訊,請參閱 DialogProc。
傳回值
沒有
言論
DialogBox 巨集會使用 CreateWindowEx 函式來建立對話方塊。 DialogBox 然後,如果範本指定對話框程式 DS_SETFONT 或DS_SHELLFONT樣式,則會傳送 WM_INITDIALOG 訊息(以及 WM_SETFONT 訊息)。 函式會顯示對話框(不論範本是否指定 WS_VISIBLE 樣式)、停用擁有者視窗,並啟動自己的訊息循環來擷取和分派對話框的訊息。
當對話框程式呼叫 EndDialog 函式時,DialogBox 終結對話框、結束訊息迴圈、啟用擁有者視窗(如果先前啟用),並在 呼叫 endDialog時傳回對話框程式所指定的 nResult 參數。
例子
如需範例,請參閱 建立強制回應對話框。
注意
winuser.h 標頭會將 DialogBox 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
支援的最低伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
目標平臺 | 窗戶 |
標頭 | winuser.h (包括 Windows.h) |
連結庫 | User32.lib |
DLL | User32.dll |
另請參閱
概念
參考