Шаг 599 - CDialog::Create.

Автор Каев А. Г.
BOOL Create( LPCTSTR lpszTemplateName, CWnd* pParentWnd = NULL );
BOOL Create( UINT nIDTemplate, CWnd* pParentWnd = NULL );

Возвращаемое значение
Оба возврата отличны от нуля, если создание диалогового окна и инициализация было успешны, иначе 0.

Параметры
lpszTemplateName
Содержит строку с нулевым символом в конце, которая является именем ресурса шаблона диалогового окна.
pParentWnd
Указатель на родительский объект окна (типа CWnd) которому объект диалога принадлежит. Если это NULL родительское окно установлено к основному окну прикладной программы.
nIDTemplate
Содержит номер ID ресурса шаблона диалогового окна.

Замечания
Обращение Create, чтобы создать немодальное диалоговое окно, использующее шаблон диалогового окна из ресурса. Вы можете помещать обращени к Create внутри конструктора или вызывать его после того, как конструктор вызывается.
Две формы Create функции предусматривают доступ к ресурсу шаблона диалогового окна или по имени шаблона или по номеру ID (например, IDD_DIALOG1).
Для любой формы, передайте указатель на родительский объект окна. Если pParentWnd NULL диалоговое окно будет создано с родителем или набором окон владельцев к основному окну прикладной программы. Create функция возвращается немедленно после того, как это создает диалоговое окно.
Используйте WS_VISIBLE стиль в шаблоне диалогового окна, если диалоговое окно появилось, когда родительское окно создано. Иначе, Вы должны вызвать ShowWindow.
Используйте CWnd::DestroyWindow чтобы уничтожить диалоговое окно, созданное функцией Create.

Пример

CMyDialog* pDialog;

void CMyWnd::OnSomeAction()
{
   //pDialog инициализированный к NULL в конструкторе класса CMyWnd
   pDialog = new CMyDialog();
   //Проверьте получили ли новый  допустимый указатель на объект диалога
   if(pDialog != NULL)
   {
      BOOL ret = pDialog->Create(IDD_MYDIALOG,this);
      if(!ret)   //Ошибка создания
         AfxMessageBox("Error creating Dialog");
      pDialog->ShowWindow(SW_SHOW);
   }
   else
      AfxMessageBox("Error Creating Dialog Object");
}

Hosted by uCoz