Функция CreateDialogParam создает немодальное диалоговое окно из шаблона ресурса блока диалога. Перед показом диалогового окна на экране, функция передает в процедуру блока диалога определяемое программой значение сообщения WM_INITDIALOG, как параметр lParam. Прикладная программа может использовать это значение, чтобы инициализировать органы управления диалогового окна.
Синтаксис
HWND CreateDialogParam( HINSTANCE hInstance, LPCTSTR lpTemplateName, HWND hWndParent, DLGPROC lpDialogFunc, LPARAM dwInitParam ); |
Параметры
hInstance
[in] Дескриптор модуля, исполняемый файл которого содержит шаблон диалогового окна.lpTemplateName
[in] Определяет шаблон диалогового окна. Этот параметр - или указатель на строку символов с нуль-терминатором в конце, которая определяет имя шаблона диалогового окна, или целочисленное значение, которое определяет идентификатор ресурса шаблона блока диалога. Если параметр определяет идентификатор ресурса, его старшее слово должно быть нуль, а младшее слово должно содержать идентификатор. Вы можете использовать макрокоманду MAKEINTRESOURCE, чтобы создать это значение.hWndParent
[in] Дескриптор окна, которое владеет диалоговым окном.lpDialogFunc
[in] Указатель на процедуру диалогового окна. Дополнительную информацию о процедуре диалогового окна, см. в описании DialogProc.dwInitParam
[in] Устанавливает значение, передаваемое процедуре диалогового окна в параметре lParam сообщения WM_INITDIALOG.Возвращаемое значение
Если функция завершается успешно, возвращаемое значение - дескриптор диалогового окна.
Если функция завершается ошибкой, возвращаемое значение - ПУСТО (NULL). Чтобы получить дополнительную информацию об ошибке, вызовите GetLastError.
ЗамечанияЧтобы создать диалоговое окно, функция CreateDialogParam использует функцию CreateWindowEx. Затем CreateDialogParam отправляет сообщение WM_INITDIALOG (и сообщение WM_SETFONT, если шаблон определяет стиль DS_SETFONT или DS_SHELLFONT) процедуре диалогового окна. Функция показывает на экране диалоговое окно, если шаблон определяет стиль WS_VISIBLE. Наконец, CreateDialogParam возвращает дескриптор окна блока диалога.
После того как CreateDialogParam возвратит значение, вы можете использовать функцию ShowWindow, чтобы показать на экране диалоговое окно (если оно ещё не видимое). Чтобы разрушить диалоговое окно, используйте функцию DestroyWindow. Чтобы поддерживать перемещение с помощью клавиатуры и другие функциональные возможности диалогового окна, цикл обработки сообщений диалогового окна должен вызвать функцию IsDialogMessage.
Windows 95/98/Me: Система может поддерживать максимум 255 органов управления в шаблоне диалогового окна. Чтобы разместить больше чем 255 элементов управления в диалоговом окне, создавайте органы управления в обработчике сообщения WM_INITDIALOG, а не помещайте их в шаблон.
Windows 98/Me: CreateDialogParamW поддерживается программой Microsoft Layer for Unicode. Чтобы использовать ее, Вы должны добавить некоторые файлы к вашему приложению, как изложено в описании Microsoft Layer for Unicode для системы Windows 95/98/Me.
Смотри также
Обзор Диалоговые окна, Функции, используемые диалоговыми окнами, CreateDialog, CreateDialogIndirect, CreateDialogIndirectParam, CreateWindowEx, DestroyWindow, DialogProc, IsDialogMessage, MAKEINTRESOURCE, ShowWindow, WM_INITDIALOG, WM_SETFONT
Размещение и совместимость CreateDialogParam |
|
Windows. NET Server |
Да |
Windows XP |
Да |
Windows 2000 |
Да |
Windows NT |
Да версии 3.1 и выше |
Windows Me |
Да |
Windows 98 |
Да |
Windows 95 |
Да |
Используемая библиотека |
User32.lib |
Заголовочный файл |
|
- объявлено в |
Winuser.h |
- включено в |
Windows.h |
Unicode |
Нет |
Замечания по платформе |
Не имеется |