DLGTEMPLATE

DLGTEMPLATE структура определяет размеры и стиль диалогового окна. Эта структура, всегда первым в стандартный шаблон для диалогового окна, также определяет количество элементов управления в диалоговом окне и таким образом определяет число последующих структур DLGITEMTEMPLATE в шаблоне.

typedef struct {/ / dltt типа DWORD стиль; 
    DWORD dwExtendedStyle; 
    СЛОВО cdit; 
    короткие x; 
    короткие y; 
    короткие cx; 
    короткие cy; 
} DLGTEMPLATE 
 

Члены

стиль
Задает стиль диалогового окна. Этот член может быть сочетание значений стилей окон (такие как WS_CAPTION и WS_SYSMENU) и одно или несколько из следующих значений стиля поля диалогового окна:
Значение Значение
DS_3DLOOK Дает диалогового окна nonbold шрифта и рисует трехмерной границы вокруг элемента управления windows в диалоговом окне.

Стиль DS_3DLOOK требует только Win32-приложений на основе собранных для версий системы раньше, чем Windows 95 или Windows NT 4.0. Система автоматически применяет Трёхмерный взгляд на диалоговые окна, создаваемые приложениями, скомпилированные для текущих версий системы.

DS_ABSALIGN Указывает, что координаты диалогового окна являются экранных координат. Если этот стиль не задан, система предполагает, что они являются клиентские координаты.
DS_CENTER Центрирует диалогового окна в рабочей области; то есть, площадь, не закрывались в лоток.
DS_CENTERMOUSE Центрирует курсор мыши в диалоговом окне.
DS_CONTEXTHELP Включает вопросительный знак в строке заголовка диалогового окна. Когда пользователь щелкает знак вопроса, курсор изменения в знак вопроса с указателем. Если пользователь нажимает элемент управления в диалоговом окне, элемент управления получает сообщение WM_HELP. Элемент управления должен передать сообщение процедуру диалогового окна, которое следует вызвать WinHelp функция, с помощью команды HELP_WM_HELP. Помощи приложение отображает всплывающее окно, которое обычно содержит справку для элемента управления.

Обратите внимание, что DS_CONTEXTHELP является только местозаполнителем. При создании диалогового окна, система проверяет DS_CONTEXTHELP и, если это там, добавляет WS_EX_CONTEXTHELP расширенный стиль диалогового окна. WS_EX_CONTEXTHELP не может использоваться с WS_MAXIMIZEBOX или WS_MINIMIZEBOX стилей.

DS_CONTROL Создает диалоговое окно, которое работает хорошо, как дочернее окно другого диалогового окна, так же, как на страницу в лист свойств. Этот стиль позволяет пользователю вкладку среди управления windows диалогового окна ребенок, использовать сочетания клавиш и так далее.
DS_FIXEDSYS Вызывает диалоговое окно "" использовать SYSTEM_FIXED_FONT вместо того, чтобы по умолчанию SYSTEM_FONT. SYSTEM_FIXED_FONT — моноширинный шрифт, совместимы с системным шрифтом в версиях Windows, предшествующих 3.0.
DS_LOCALEDIT Применяется для 16-разрядных приложений. Этот стиль направляет элементов управления в диалоговом окне выделить память из сегмента данных приложения. В противном случае, редактировать элементы управления выделить память из глобальной памяти объекта.
DS_MODALFRAME Создает диалоговое окно с модальное диалоговое рамкой, которая может комбинироваться с заголовка и меню системы, указывая стили WS_CAPTION и WS_SYSMENU.
DS_NOFAILCREATE Windows 95: Создает поле, даже если возникают ошибки — например, если дочернее окно не может быть создан, или если система не может создать сегмент специальных данных элемента управления редактирования.
DS_NOIDLEMSG Подавляет сообщения WM_ENTERIDLE система бы в противном случае отправить владельцу диалогового окна, в то время как диалоговое окно.
DS_SETFONT Указывает, что заголовок диалогового окна поле шаблон содержит дополнительные данные, задание шрифта для текста в клиентской области и элементы управления диалогового окна. Шрифт данных начинается на границе слова , который следует название массива. Он определяет значение размера 16-битный точка и строка имени шрифтов Unicode. Если это возможно система создает объект font в соответствии с указанными значениями. Затем система передает дескриптор шрифта диалогового окна и каждый элемент управления, отправив им сообщения WM_SETFONT.

Если этот стиль не задан, шаблон поля диалогового окна не включает данные шрифта.

DS_SETFOREGROUND Заставляет систему использовать функцию SetForegroundWindow для приведения диалогового окна на передний план.
DS_SYSMODAL Этот стиль является устаревшим и поддерживается для обеспечения совместимости с более ранними версиями Windows. Если задан этот стиль, система создает диалогового окна с WS_EX_TOPMOST стилем. Не смешивайте этот стиль в DS_CONTROL стиле.

dwExtendedStyle
Задает расширенные стили для окна. Этот элемент не используется для создания диалоговых окон, но приложениям использовать диалоговое окно Шаблоны можно использовать для создания других типов окон.
cdit
Определяет число элементов в диалоговом окне.
x
Указывает координату x, в единицах диалогового окна поля верхнего левого угла диалогового окна.
y
Указывает координату y, в единицах диалогового окна поля верхнего левого угла диалогового окна.
cx
Определяет ширину, в единицах диалогового окна окна, диалогового окна.
cy
Определяет высоту в единицах диалогового окна окна, диалогового окна.

Примечания

В стандартный шаблон для диалогового окна DLGTEMPLATE структура всегда сразу после трех массивов переменной длины, которые определяют меню, класса и заголовок для диалогового окна. Когда стиль DS_SETFONT, эти массивы также следует 16-разрядное значение, определяющее размер шрифта и другой массив переменной длины, указав имя шрифта. Каждый массив состоит из одного или более 16-битных элементов. Меню, класса, название и шрифта массивы должны быть выровнены по границам слов.

Сразу же после DLGTEMPLATE структура представляет собой массив меню, который идентифицирует ресурс меню для диалогового окна. Если первый элемент этого массива 0x0000, диалоговое окно имеет меню не, и массив не имеет других элементов. Если первый элемент является 0xFFFF, массив имеет один дополнительный элемент, который указывает порядковое значение меню в исполняемый файл. Если первый элемент имеет любое другое значение, система рассматривает массив как строка Юникод заканчивающаяся, указывающая имя меню в исполняемый файл.

После меню массив является массивом класса, который идентифицирует класс окна элемента управления. Если первый элемент массива является 0x0000, система использует предопределенные диалогового окна поля класса для диалогового окна, и массив не имеет других элементов. Если первый элемент является 0xFFFF, массив имеет один дополнительный элемент, который указывает порядковое значение класса окна предопределенные системные. Если первый элемент имеет любое другое значение, система рассматривает массив как строка Юникод заканчивающаяся, указывающая имя класса зарегистрированных окна.

После класса массив является массивом титул, который определяет строку Unicode нулем, которая содержит заголовок диалогового окна. Если первый элемент массива является 0x0000, диалоговое окно "" не имеет названия, и массив не имеет других элементов.

Значение размера 16-битный точки и шрифт массив следуют название массива, но только если член стиль определяет стиль DS_SETFONT. Значение размера точки указывает размер шрифта для текста в диалоговом окне и ее элементов управления. Шрифт массив является завершающим нулем Unicode строка, указывающая имя гарнитуры шрифта. Когда эти значения, система создает шрифта, заданного размера и шрифта (если возможно) и отправляет сообщение WM_SETFONT процедуру диалогового окна и окна процедур контроля, он создает диалоговое окно и элементов управления.

После DLGTEMPLATE заголовок в поле Шаблон стандартного диалога являются один или несколько DLGITEMTEMPLATE структурами, которые определяют размеры и стиль элементов управления в диалоговом окне. Элемент cdit указывает количество DLGITEMTEMPLATE структур в шаблоне. Эти DLGITEMTEMPLATE структуры должны быть выровнены по границам DWORD.

Если указать символьные строки в меню, класса, название или шрифт массивы, необходимо использовать строки Юникода. Для создания кода, который работает на Windows и Windows NT, используйте функцию MultiByteToWideChar для создания этих строк Юникода.

X, y, cxи cy членов указать значения в единицах диалогового окна поле. Эти значения можно преобразовать в экране единицы (пикселей), используя функцию MapDialogRect.

QuickInfo

nbsp; Windows &NT: требует версии 3.1 или более поздней версии.
Windows:Требует Windows 95 или более поздней версии.
Windows CE:Требует версии 1.0 или более поздней версии.
Заголовок:Объявленные в winuser.h.

Родственные слова

Обзор диалогового окна, диалоговое окно окно структуры, CreateDialogIndirect, CreateDialogIndirectParam, DialogBoxIndirect, DialogBoxIndirectParam, DLGITEMTEMPLATE, DLGITEMTEMPLATEEX, DLGTEMPLATEEX, MapDialogRect, MultiByteToWideChar

Index