Макрос CreateDialogW (winuser.h)
Создает немодное диалоговое окно на основе ресурса шаблона диалогового окна. Макрос CreateDialog использует функцию CreateDialogParam .
Синтаксис
void CreateDialogW(
[in, optional] hInstance,
[in] lpName,
[in, optional] hWndParent,
[in, optional] lpDialogFunc
);
Параметры
[in, optional] hInstance
Тип: HINSTANCE
Дескриптор модуля, содержащего шаблон диалогового окна. Если этот параметр имеет значение NULL, то используется текущий исполняемый файл.
[in] lpName
Тип: LPCTSTR
Шаблон диалогового окна. Этот параметр является либо указателем на символьную строку, завершающуюся null, которая указывает имя шаблона диалогового окна, либо целочисленное значение, указывающее идентификатор ресурса шаблона диалогового окна. Если параметр задает идентификатор ресурса, его слово высокого порядка должно быть равно нулю, а слово низкого порядка должно содержать идентификатор. Для создания этого значения можно использовать макрос MAKEINTRESOURCE .
[in, optional] hWndParent
Тип: HWND
Дескриптор для окна, которому принадлежит диалоговое окно.
[in, optional] lpDialogFunc
Тип: DLGPROC
Указатель на процедуру диалогового окна. Дополнительные сведения о процедуре диалогового окна см. в разделе DialogProc.
Возвращаемое значение
None
Remarks
Функция CreateDialog использует функцию CreateWindowEx для создания диалогового окна. Затем CreateDialog отправляет WM_INITDIALOG сообщение (и WM_SETFONT сообщение, если шаблон задает стиль DS_SETFONT или DS_SHELLFONT) в процедуру диалогового окна. Функция отображает диалоговое окно, если шаблон задает стиль WS_VISIBLE . Наконец, CreateDialog возвращает дескриптор окна в диалоговое окно.
После возврата CreateDialog приложение отображает диалоговое окно (если оно еще не отображается) с помощью функции ShowWindow . Приложение удаляет диалоговое окно с помощью функции DestroyWindow . Для поддержки навигации с помощью клавиатуры и других функций диалогового окна цикл сообщений для диалогового окна должен вызывать функцию IsDialogMessage .
Примеры
Пример см. в разделе Создание безмодерного диалогового окна.
Примечание
Заголовок winuser.h определяет CreateDialog как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Сочетание использования псевдонима, не зависящий от кодировки, с кодом, не зависящим от кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | winuser.h (включая Windows.h) |
Библиотека | User32.lib |
DLL | User32.dll |
См. также раздел
Основные понятия
Справочные материалы