DialogBoxParamW 函数 (winuser.h)
从对话框模板资源创建模式对话框。 在显示对话框之前,该函数会将应用程序定义的值作为 WM_INITDIALOG 消息的 lParam 参数传递给对话框过程。 应用程序可以使用此值初始化对话框控件。
语法
INT_PTR DialogBoxParamW(
[in, optional] HINSTANCE hInstance,
[in] LPCWSTR lpTemplateName,
[in, optional] HWND hWndParent,
[in, optional] DLGPROC lpDialogFunc,
[in] LPARAM dwInitParam
);
参数
[in, optional] hInstance
类型:HINSTANCE
包含对话框模板的模块句柄。 如果此参数为 NULL,则使用当前可执行文件。
[in] lpTemplateName
类型:LPCTSTR
对话框模板。 此参数是指向以 null 结尾的字符串的指针,该字符串指定对话框模板的名称或指定对话框模板的资源标识符的整数值。 如果参数指定资源标识符,则其高序单词必须为零,其低序单词必须包含标识符。 可以使用 MAKEINTRESOURCE 宏创建此值。
[in, optional] hWndParent
类型:HWND
拥有对话框的窗口的句柄。
[in, optional] lpDialogFunc
类型:DLGPROC
指向对话框过程的指针。 有关对话框过程的详细信息,请参阅 DialogProc。
[in] dwInitParam
类型:LPARAM
要传递给 WM_INITDIALOG 消息的 lParam 参数中的对话框的值。
返回值
类型:INT_PTR
如果函数成功,则返回值为调用用于终止对话框的 EndDialog 函数中指定的 nResult 参数的值。
如果函数失败,因为 hWndParent 参数无效,则返回值为零。 在这种情况下,此函数返回零,以便与早期版本的 Windows 兼容。 如果函数因任何其他原因而失败,则返回值为 –1。 若要获取扩展的错误信息,请调用 GetLastError。
言论
DialogBoxParam 函数使用 CreateWindowEx 函数来创建对话框。 DialogBoxParam 然后向对话框过程发送 WM_INITDIALOG 消息(如果模板指定 DS_SETFONT 或DS_SHELLFONT样式),则发送 WM_SETFONT 消息。 该函数显示对话框(无论模板是否指定 WS_VISIBLE 样式),禁用所有者窗口,并启动其自己的消息循环来检索和调度对话框的消息。
当对话框过程调用
注意
winuser.h 标头将 DialogBoxParam 定义为一个别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将中性编码别名与不中性编码的代码混合使用可能会导致编译或运行时错误不匹配。 有关详细信息,请参阅函数原型的
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
支持的最低服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | 窗户 |
标头 | winuser.h (包括 Windows.h) |
库 | User32.lib |
DLL | User32.dll |
API 集 | ext-ms-win-ntuser-dialogbox-l1-1-1(在 Windows 8.1 中引入) |
另请参阅
概念
参考