CreateDialog

CreateDialog

Макрос CreateDialog создает немодальное диалоговое окно из ресурса - шаблона диалогового окна. Макрос CreateDialog использует функцию CreateDialogParam .

HWND CreateDialog (

HINSTANCE hInstance , // дескриптор экземпляра приложения

LPCTSTR lpTemplate , // идентифицирует имя шаблона диалогового окна

HWND hWndParent , // дескриптор окна - владельца

DLGPROC lpDialogFunc // указатель на оконную процедуру

// диалогового окна

);

Параметры

hInstance - идентифицирует экземпляр модуля, чей исполняемый файл содержит шаблон диалогового окна.

lpTemplate - идентифицирует шаблон диалогового окна. Этот параметр является либо указателем на завершающуюся нулем строку, определяющей имя шаблона диалогового окна, либо целым значением, которое определяет идентификатор ресурса шаблона диалогового окна. Если этот параметр является идентификатором ресурса, его старшее слово должно быть равно нулю, а младшее слово должно содержать идентификатор. Вы можете использовать макрос MAKEINTRESOURCE для создания этого значения.

hWndParent - идентифицирует окно, владеющее диалоговым окном.

lpDialogFunc - указатель на оконную процедуру диалогового окна. Для дополнительной информации об этой процедуре смотрите DialogProc .

Возвращаемые значения

В случае успеха возвращается дескриптор диалогового окна.

В случае неудачи возвращается NULL .

Комментарии

Функция CreateDialog использует функцию CreateWindowEx для создания диалогового окна. Затем CreateDialog отправляет сообщение WM _ INITDIALOG (а также сообщение WM _ SETFONT, если шаблон задает стиль DS _ SETFONT ) оконной процедуре диалогового окна. Функция отображает диалоговое окно, в случае если шаблон задает стиль WS _ VISIBLE. В заключение, CreateDialog возвращает дескриптор диалогового окна.

После того, как функция CreateDialog вернет управление, приложение отображает диалоговое окно (если оно еще не отображено), используя функцию ShowWindow . Приложение разрушает диалоговое окно, используя функцию DestroyWindow .

Windows 95: Система поддерживает максимум 16384 дескрипторов окон.

См. также

CreateDialogIndirect, CreateDialogIndirectParam, CreateDialogParam, CreateWindowEx, DestroyWindow, DialogBox, DialogProc, ShowWindow , WM_INITDIALOG, WM_SETFONT.