CDialog::InitModalIndirect

BOOL InitModalIndirect(LPCDLGTEMPLATE lpDialogTemplate, CWnd* pParentWnd = NULL);
BOOL InitModalIndirect(HGLOBAL hDialogTemplate, CWnd* pParentWnd = NULL);

返回值:
如果对话框对象创建和初始化成功,则返回非零值,否则为0。

参数:
lpDialogTemplate包含用于创建对话框的对话框模板的指针。该模板位于DLGTEMPLATE结构和控件信息表单中。有关该结构的更多信息,请参阅联机文档“Win32 SDK”。
hDialogTemplate包含对话框模板的全局内存的句柄。模板使用DLGTEMPLATE结构的形式。
pParentWnd指向含有对话框的父窗口和所有者窗口(CWnd类型)的指针。如果其为NULL,对话框对象的父窗口设置为主应用程序窗口。

说明:
调用该成员函数,使用内存中构造的对话框模板初始化模态对话框。
要间接创建一个模态对话框,首先应分配一块全局内存用于存放对话框模板,然后调用空的CDialog构造程序构造对话框对象,再调用InitModalIndirect将句柄存入内存中的对话框模板。当调用DoModal成员函数后,Windows 对话框被创建并显示。

请参阅:
::DialogBoxIndirect, CDialog::DoModal, ::CDialogCWnd::DestroyWindow CDialog