共用方式為


CDialog::Create

呼叫建立非強制回應對話方塊的 建立 使用資源的對話方塊範本。

virtual BOOL Create(
   LPCTSTR lpszTemplateName,
   CWnd* pParentWnd = NULL 
);
virtual BOOL Create(
   UINT nIDTemplate,
   CWnd* pParentWnd = NULL 
);

參數

  • lpszTemplateName
    包含為對話方塊樣板資源名稱的 NULL 結尾字串。

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

  • nIDTemplate
    包含對話方塊樣板資源的 ID 編號。

傳回值

如果 對話方塊建立和初始化成功,兩種形式傳回非零,則為 0。

備註

在叫用建構函式之後,您可以將這個呼叫在建構函式中的 建立 或呼叫它。

建立 成員函式的兩個表單提供存取對話方塊樣板資源的存取由樣板或樣板名稱 ID 編號 (例如,) IDD_DIALOG1。

對於任何表單,請將指標傳遞給父視窗物件。 如果 pParentWnd 是 NULL,對話方塊會建立與其父視窗或主控視窗設定至主應用程式視窗。

在建立對話方塊之後, 建立 成員函式所傳回。

請使用 WS_VISIBLE 樣式在對話方塊樣板,如果對話方塊應該會顯示父視窗建立。 否則,您必須呼叫 ShowWindow。 如需進一步的對話方塊樣式和它們的應用程式,請參閱 Windows SDK 和 視窗樣式DLGTEMPLATE 結構《 MFC參考》中的。

使用 CWnd::DestroyWindow 函式終結 建立 函式建立的對話方塊。

範例

void CMyDialog::OnMenuShowSimpleDialog()
{
   //m_pSimpleDialog initialized to NULL in the constructor of CMyDialog class
   m_pSimpleDlg = new CSimpleDlg();
   //Check if new succeeded and we got a valid pointer to a dialog object
   if(m_pSimpleDlg != NULL)
   {
      BOOL ret = m_pSimpleDlg->Create(IDD_SIMPLEDIALOG, this);

      if(!ret)   //Create failed.
         AfxMessageBox(_T("Error creating Dialog"));

      m_pSimpleDlg->ShowWindow(SW_SHOW);
   }
   else
   {
      AfxMessageBox(_T("Error Creating Dialog Object"));
   }
}

需求

Header: afxwin.h

請參閱

參考

CDialog 類別

階層架構圖

CDialog::CDialog

CWnd::DestroyWindow

CDialog::InitModalIndirect

CDialog::DoModal

CreateDialog