Функция DialogBoxParam


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

Синтаксис

INT_PTR DialogBoxParam(
    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.

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

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

Если функция завершается ошибкой, потому что параметр hWndParent недопустим, возвращаемое значение равняется нулю.  В этой ситуации функция возвращает нуль для совместимости с предыдущими версиями Microsoft ® Windows ®. Если функция завершается ошибкой по любой другой причине, возвращаемое значение равно - (минус)1. Чтобы получить дополнительную информацию об ошибке, вызовите GetLastError.

Замечания

Чтобы создать диалоговое окно, функция DialogBoxParam использует функцию CreateWindowEx. Затем DialogBoxParam отправляет сообщение WM_INITDIALOG (и сообщение WM_SETFONT, если шаблон определяет стиль DS_SETFONT или DS_SHELLFONT) процедуре диалогового окна. Функция показывает на экране диалоговое окно (независимо от того, определяет ли шаблон стиль WS_VISIBLE), блокирует окно владельца, и начинает свой собственный цикл обработки сообщений, чтобы извлекать и распределять сообщения для диалогового окна.

Когда процедура диалогового окна вызывает функцию EndDialog, DialogBoxParam разрушает диалоговое окно, заканчивает цикл обработки сообщений, включает окно владельца (если ранее оно работало) и возвращает параметр nResult, заданный процедурой диалогового окна, когда она вызвала EndDialog.

Windows 95/98/Me: Система может поддерживать максимум 255 органов управления в шаблоне диалогового окна. Чтобы разместить больше чем 255 элементов управления в диалоговом окне, создавайте органы управления в обработчике сообщения  WM_INITDIALOG, а не помещайте их в шаблон.

Windows 95/98/Me: DialogBoxParamW поддерживается программой Microsoft Layer for Unicode. Чтобы использовать ее, Вы должны добавить некоторые файлы к вашему приложению, как изложено в описании Microsoft Layer for Unicode для системы Windows 95/98/Me.i

Смотри также 

Обзор Диалоговые окнаФункции, используемые диалоговыми окнами, CreateWindowExDialogBox, DialogBoxIndirect, DialogBoxIndirectParam, DialogProc, EndDialog,  MAKEINTRESOURCE , WM_INITDIALOG, WM_SETFONT 

Размещение и совместимость DialogBoxParam

Windows. NET Server

Да

Windows XP

Да

Windows 2000

Да

Windows NT

Да версии 3.1 и выше

Windows Me

Да

Windows 98

Да

Windows 95

Да

Используемая библиотека

User32.lib

Заголовочный файл

 

- объявлено в

Winuser.h

- включено в

Windows.h

Unicode

Нет

Замечания по платформе

Не имеется

 

Назад в оглавление
На главную страницу
На оглавление справки

Hosted by uCoz