使用对话框模版资源创建一个非模态对话框。
CreateDialog调用 CreateDialogParam 函数。
调用语序:
HWND CreateDialog(HINSTANCE hInstance,LPCTSTR lpTemplate,HWND hWndParent,DLGPROC lpDialogFunc);
参数
hInstance类型:HINSTANCE
对话框模版所在模块的句柄。如果为NULL,则使用当前可执行文件。
lpTemplate类型:LPCTSTR
对话框模版。这个参数是一个以空字符结尾的字符串指针用来指定对话框模版的名字,或者是是一个整数用来指定对话框模版资源的标识符。如果参数是资源标识符,高16位必须是0,低16位包含标识符,并且必须使用宏 MAKEINTRESOURCE 创建这个值。(这个名字在与RC文件中对话框模板名称相对应),如图所示:
hWndParent类型:HWND
拥有对话框窗口的句柄
lpDialogFunc类型:DLGPROC
对话框消息处理函数,又称为对话框过程。详细可了解 DialogProc 。
返回值
类型:HWND
如果成功,返回对话框窗口句柄。 如果失败返回NULL。
备注
CreateDialog本质是调用函数 CreateWindowEx 来创建对话框。创建以后,CreateDialog 会发送 WM_INITDIALOG 消息。 如果模版标识 WS_VISIBLE 风格, CreateDialog 函数显示对话框。 当 CreateDialog 返回后,应用程序通过 ShowWindow 函数显示对话框(如果对话框还没有显示的话)。应用程序通过 DestroyWindow 函数销毁非模态对话框。为了支持键盘浏览或其它对话框功能,消息循环必须调用 IsDialogMessage 函数。
支持
最低桌面系统支持Windows 2000 Professional头文件Winuser.h (已包含在Windows.h中)库User32.libDLLUser32.dllUNICODE版本名CreateDialogWANSI版本名CreateDialogA参考:CreateDialog-WIN32 API手册-惧留孙课堂