Шаг 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");
}

Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем - 23.01.2002