共用方式為


CDialog::InitModalIndirect

呼叫此成員函式會強制回應對話方塊物件使用對話方塊範本您在記憶體中建構。

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

參數

  • lpDialogTemplate
    對含有用來建立對話方塊樣板建立對話方塊的記憶體的點。 以 DLGTEMPLATE 結構和控制項資訊的格式,這個範本是 Windows SDK,如中所述。

  • hDialogTemplate
    包含控制代碼包含對話方塊範本的全域記憶體。 這個範本是以 DLGTEMPLATE 結構和資料形式為每個控制項在對話方塊中。

  • pParentWnd
    父視窗或主控視窗物件的點 (型別) CWnd對話方塊物件所屬的。 如果是物件, NULL對話方塊的父視窗設定至主應用程式視窗。

  • lpDialogInit
    DLGINIT 資源的點。

傳回值

如果不是零,則對話方塊物件已成功建立及已初始化,則為 0。

備註

若要間接建立強制回應對話方塊,請先配置記憶體全域區塊並用對話方塊範本填滿它。 然後呼叫空的 CDialog 建構對話方塊。 接著,呼叫將控制代碼的 InitModalIndirect 到記憶體對話方塊範本。 當 DoModal 成員函式呼叫時, 對話方塊中建立並顯示。

包含 ActiveX 控制項的對話方塊會要求在 DLGINIT 資源提供的額外資訊。 如需詳細資訊,請參閱知識庫文件 Q231591 「, HOWTO:使用對話方塊範本建立 ActiveX 控制項的 MFC 對話方塊」。您可以在 MSDN Library 的 Visual Studio 文件或 https://support.microsoft.com 中找到知識庫文件。

需求

Header: afxwin.h

請參閱

參考

CDialog 類別

階層架構圖表

DialogBoxIndirect

CDialog::DoModal

CWnd::DestroyWindow

CDialog::CDialog