Структура DLGITEMTEMPLATEEX


Структура DLGITEMTEMPLATEEX не определяется в каком-либо стандартном заголовочном файле. Описание структуры предусматривается здесь, чтобы объяснить формат расширенного шаблона для диалогового окна.

Для каждого органа управления в диалоговом окне, расширенный шаблон блока диалога имеет блок данных, который использует формат DLGITEMTEMPLATEEX, чтобы характеризовать орган управления. Для описания формата расширенного шаблона диалогового окна, см. статью о  DLGTEMPLATEEX.

Синтаксис

typedef struct {
    DWORD  helpID;
    DWORD  exStyle;
    DWORD  style;
    short  x;
    short  y;
    short  cx;
    short  cy;
    WORD  id;
    sz_Or_Ord  windowClass;
    sz_Or_Ord  title;
    WORD  extraCount;
} DLGITEMTEMPLATEEX;

Члены структуры

helpID

Устанавливает контекстный идентификатор справки для органа управления. Когда система отправляет сообщение WM_HELP, это сообщение передает значение helpID в член dwContextId структуры HELPINFO.

exStyle

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

style

Задает стиль органа управления. Этот член структуры может быть комбинацией значений стиля окна (таких как WS_BORDER) и одним или несколькими значениями стиля органа управления (такими как BS_PUSHBUTTON и ES_LEFT).

x

Устанавливает x-координату левого верхнего угла органа управления в единицах измерения диалогового окна. Эта координата - всегда относительно левого верхнего угла рабочей области блока диалога.

y

Устанавливает y-координату левого верхнего угла органа управления в единицах измерения диалогового окна. Эта координата - всегда относительно левого верхнего угла рабочей области блока диалога.

cx

Устанавливает ширину органа управления, в единицах измерения диалогового окна.

cy

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

id

Определяет идентификатор органа управления.

windowClass

Определяет массив переменной длины 16-разрядных элементов, который устанавливает класс окна органа управления. Если первый элемент этого массива - любое значение, а не 0xFFFF, система обрабатывает массив как строку Unicode с символом конца строки ('\0'), которая задает имя регистрируемого класса окна.

Если первый элемент - 0xFFFF, массив имеет один дополнительный элемент, который устанавливает порядковое значение предопределенного системного класса. Порядковый номер может быть одним из ниже перечисленных значений атома.

Значение Предназначение
0x0080 Кнопка (Button)
0x0081 Поле редактирования текста (Edit)
0x0082 Статическое поле (Static)
0x0083 Окно списка (List box)
0x0084 Линейка прокрутки (Scroll bar)
0x0085 Комбинированное окно (Combo box)

title

Устанавливает массив переменной длины 16-разрядных элементов, который содержит начальный текст или идентификатор ресурса органа управления. Если первый элемент этого массива - 0xFFFF, массив имеет один дополнительный элемент, который определяет порядковое значение ресурса, типа значка, в исполняемом файле. Вы можете использовать идентификатор ресурса для органов управления, таких как  значок статического органа управления, который загружает и показывает на экране значок или другой ресурс, но не текст. Если первый элемент - какое-либо значение, а не 0xFFFF, система обрабатывает массив как строку Unicode с символом конца строки ('\0'), которая устанавливает начальный текст.

extraCount

Определяет число байтов данных для создания, которые следуют за этим членом структуры. Если это значение больше, чем нуль, данные для создания начинаются со следующей границы СЛОВА (WORD). Эти данные для создания могут иметь любой размер и формат. Оконная процедура органа управления должна быть в состоянии интерпретировать эти данные. Когда система создает орган управления, то она передает указатель на эти данные в параметре lParam сообщения WM_CREATE, которое она отправляет в орган управления.

Замечания

Расширенный шаблон для диалогового окна состоит из заголовка DLGTEMPLATEEX, сопровождаемого структурой DLGITEMTEMPLATEEX для каждого органа управления в блоке диалога.

Каждая структура DLGITEMTEMPLATEEX должна выравниваться по границе двойного слова (DWORD). Массивы переменной длины  windowClass и  title должна выравниваться по границам слова (WORD). Массив данных создания, если таковой имеется, должен выравниваться на границе слова (WORD).

Если Вы в массивах windowClass и  title задаете строки символов, то должны использовать символьные строки Unicode. Чтобы создать код, который работает и в Microsoft ® Windows ® 95/98/Me, и в Windows NT/2000/XP, используйте функции, которые генерируют эти символьные строки Unicode.

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

Смотри также 

Обзор Диалоговые окнаСтруктуры, используемые диалоговыми окнамиCreateDialogIndirectCreateDialogIndirectParamCreateWindowExDialogBoxIndirectDialogBoxIndirectParamDLGTEMPLATEEXMapDialogRect,  MultiByteToWideChar,  WM_CREATE, WM_HELP

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

Windows. NET Server

Да

Windows XP

Да

Windows 2000

Да

Windows NT

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

Windows Me

Да

Windows 98

Да

Windows 95

Да

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

-

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

 

- объявлено в

 -

- включено в

 -

Unicode

Нет

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

Не имеется

 

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

Hosted by uCoz