Функция CreateDialog

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

Синтаксис

HWND CreateDialog(
    HINSTANCE hInstance,
    LPCTSTR lpTemplate,
    HWND hWndParent,
    DLGPROC lpDialogFunc);

Параметры

hInstance

[in] Дескриптор, исполняемый файл которого содержит шаблон диалогового окна.

lpTemplate

[in] Определяет шаблон диалогового окна. Этот параметр является или указателем на строку с символом конца строки ('\0'), которая определяет название шаблона блока диалога, или целочисленным значением, которое устанавливает идентификатор ресурса шаблона диалогового окна. Если параметр устанавливает идентификатор ресурса, его старшее слово должно быть нуль, а младшее слово должно содержать идентификатор. Чтобы создать это значение, Вы можете использовать макрокоманду MAKEINTRESOURCE.

hWndParent

[in] Дескриптор окна, которое владеет диалоговым окном.

lpDialogFunc

[in] Указатель на процедуру диалогового окна. Дополнительную информацию о процедуре диалогового окна, см. в описании DialogProc.

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

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

Если функция завершается ошибкой, возвращаемое значение -ПУСТО (NULL). Чтобы получить дополнительную информацию об ошибке, вызовите GetLastError.

Замечания

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

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

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

Пример

Пример, см. в статье Создание немодального диалогового окна.

Смотри также 

Обзор Диалоговые окнаФункции, используемые диалоговыми окнами, CreateDialogIndirect, CreateDialogIndirectParam, CreateDialogParam, CreateWindowEx, DestroyWindow, DialogBox, DialogProc, IsDialogMessage, ShowWindow, WM_INITDIALOG, WM_SETFONT 

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

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