CreateDialogParam()函数

函数功能:该函数根据对话框模板资源创建一个无模式的对话框。在显示对话框之前,函数把一个应用程序定义的值作为WM_INITDIALOG消息IParam参数传到对话框过程应用程序可用此值来初始化对话框控制。

函数原型:HWND CreateDialogParam(HINSTANCE hlnstancem,LPCTSTR IpTemplateName,HWND hWndParent,DLGPROCIpDialogFunc, LPARAM dwlniParam);

参数:

hlnstance:标识一个模块的事例,该模块的可执行文件含有对话框模板。

IpTemplateName:标识对话框模板。此参数可以指向一个以NULL结尾的字符串的指针,该字符串指定对话框模板名,或是指定对话框模板的资源标识符的一个整型值。如果此参数指定了一个资源标识符,则它的高位字一定为零且低位字一定含有标识符。一定用MAKENTRESOURDE宏指令创建此值。

HwndParent:指定拥有对话框的窗口。

IpDialogFunc:指向对话框过程的指针。有关对话框过程的更详细的信息,请参见DialogProc。

dwlnitParam:指定传递到WM_INITDIALOG消息的IParam参数中的对话框过程的值。

返回值:如果函数调用成功则返回值为指向对话框的窗口句柄。如果函数调用失败则返回值为NULL。

若想获得更多错误信息,请调用GetlastError函数。

备注:CreateoialogParam函数用 CreateWindowEx函数创建对话框。CreateDialogParam函数然后把一个WM_INITDIALOG消息(和一个WM_SETFONT消息,如果模板指定DS SETFONT类型)传递到对话框过程。如果模板指定WS_VISIBLE类型,则函数显示对话框,最后CreateDialogParam返回对话框的窗口句柄。

CreateDialogParam返回之后应用程序用ShowWindow显示对话框(如果还没有显示)。应用程序用DestroyWindoW函数来清除对话框。

Windows 95和以后版本:系统可支持每个对话框模板中最多255个控制。为把大于255个的控制放入对话框,需要在WM_INITDIALOG消息处理器中创建控制,而不是把他们放入模板中。

Windows CE:IPTemplateName参数指向的对话框模板中DLGTEMPLATE结构并不支持所有的类型。

速查:Windows NT:3.1 及以上版本;Windows:95及以上版本;Windows CE:1.0及以上版本;头文件;winuser.h;库文件:use32.lib;Unicode:在Windows NT上实现为Unicode和ANSI两种版本。

《CreateDialogParam()函数》上有28条评论

评论已关闭。