Поделиться через


Функция CreateDialogParamW (winuser.h)

Создает диалоговое окно без режима из ресурса шаблона диалогового окна. Перед отображением диалогового окна функция передает определяемое приложением значение в процедуру диалогового окна в качестве параметра lParam сообщения WM_INITDIALOG. Приложение может использовать это значение для инициализации элементов управления диалоговым окном.

Синтаксис

HWND CreateDialogParamW(
  [in, optional] HINSTANCE hInstance,
  [in]           LPCWSTR   lpTemplateName,
  [in, optional] HWND      hWndParent,
  [in, optional] DLGPROC   lpDialogFunc,
  [in]           LPARAM    dwInitParam
);

Параметры

[in, optional] hInstance

Тип: HINSTANCE

Дескриптор модуля, содержащего шаблон диалогового окна. Если этот параметр имеет значение NULL, используется текущий исполняемый файл.

[in] lpTemplateName

Тип: LPCTSTR

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

[in, optional] hWndParent

Тип: HWND

Дескриптор окна, которому принадлежит диалоговое окно.

[in, optional] lpDialogFunc

Тип: DLGPROC

Указатель на процедуру диалогового окна. Дополнительные сведения о процедуре диалогового окна см. в разделе DialogProc.

[in] dwInitParam

Тип: LPARAM

Значение, передаваемое в процедуру диалогового окна в параметре lParam в сообщении WM_INITDIALOG.

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

Тип: HWND

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

Если функция завершается ошибкой, возвращаемое значение равно NULL. Чтобы получить расширенные сведения об ошибке, вызовите GetLastError.

Замечания

Функция CreateDialogParam использует функцию CreateWindowEx для создания диалогового окна. CreateDialogParam отправляет сообщение WM_INITDIALOG (и сообщение WM_SETFONT, если шаблон задает стиль DS_SETFONT или DS_SHELLFONT) в процедуру диалогового окна. Функция отображает диалоговое окно, если шаблон задает стиль WS_VISIBLE. Наконец, CreateDialogParam возвращает дескриптор окна диалогового окна.

После возвращения CreateDialogParam приложение отображает диалоговое окно (если оно еще не отображается) с помощью функции ShowWindow. Приложение уничтожает диалоговое окно с помощью функции DestroyWindow. Чтобы поддерживать навигацию по клавиатуре и другие функции диалогового окна, цикл сообщений для диалогового окна должен вызвать функцию IsDialogMessage.

Заметка

Заголовок winuser.h определяет CreateDialogParam как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 2000 Профессиональный [только классические приложения]
минимальный поддерживаемый сервер Windows 2000 Server [только классические приложения]
целевая платформа Виндоус
заголовка winuser.h (включая Windows.h)
библиотеки User32.lib
DLL User32.dll
набор API ext-ms-win-ntuser-dialogbox-l1-1-0 (представлено в Windows 8)

См. также

концептуальные

CreateDialog

CreateDialogIndirect

CreateDialogIndirectParam

CreateWindowEx

DestroyWindow

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

DialogProc

IsDialogMessage

MAKEINTRESOURCE

Справочник

ShowWindow

WM_INITDIALOG

WM_SETFONT