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-розрядних і рядок ім'я шрифту Юнікоду. Якщо можливо, система створює шрифту відповідно до вказаних значень. Потім система проходить маркер шрифту в діалоговому вікні та для кожного елемента керування шляхом надсилання WM_SETFONT повідомлення.

Якщо цей стиль не вказано, діалоговому вікні шаблон не включати дані шрифту.

DS_SETFOREGROUND Причини системи використовувати функцію SetForegroundWindow принести діалогове вікно на передній план.
DS_SYSMODAL Цей стиль є застарілими і включені для сумісності з попередніми версіями Windows. Якщо вказати цей стиль, система створює діалогового вікна з WS_EX_TOPMOST стилю. Не слід об'єднувати цей стиль стиль DS_CONTROL.

dwExtendedStyle
Визначає додаткові стилі для вікна. Цей компонент не використовується для створення діалогових вікон, але додатків, що використовують діалоговому вікні Шаблони можна використовувати для створення інших типів windows.
cdit
Визначає кількість елементів у діалоговому вікні.
x
Визначає x координати, у діалоговому вікні одиниці, у верхньому лівому куті діалогового вікна.
y
Визначає у координатою, у діалоговому вікні одиниці, у верхньому лівому куті діалогового вікна.
cx
Визначає ширину, у діалоговому вікні одиниці, у діалоговому вікні.
cy
Визначає висоту, у діалоговому вікні одиниці, у діалоговому вікні.

Зауваження

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

Відразу після DLGTEMPLATE структура є меню масив, який ідентифікує меню ресурс для діалогового вікна. Якщо першим елементом цього масиву 0x0000, діалогове вікно має меню не і масив немає інших елементів. Якщо перший елемент 0xFFFF, масив має один додатковий елемент, який визначає значення порядковий номер меню ресурсу в виконуваний файл. Якщо перший елемент має будь-які інші значення, система сприймає масив як нульовим Юнікод рядок, який визначає ім'я ресурсу меню в виконуваний файл.

Після меню масиву є клас масив, який ідентифікує контролю, клас вікна. Якщо перший елемент масиву 0x0000, система використовує стандартний діалоговому вікні клас для діалогового вікна і масив має не інших елементів. Якщо перший елемент 0xFFFF, масив має один додатковий елемент, який визначає порядковий номер значення визначеної системи клас вікна. Якщо перший елемент має будь-які інші значення, система сприймає масив як нульовим Юнікод рядок, який визначає ім'я класу, зареєстрованих вікно.

Після масив клас є назва масив, який визначає нульовим Юнікод рядок, який містить назви діалогового вікна. Якщо першим елементом цього масиву 0x0000, діалогове вікно не має назви, і масив має не інших елементів.

Значення розміру точки 16-розрядних і масив шрифт виконайте назву масиву, але тільки, якщо член стиль визначає стиль DS_SETFONT. Значення розміру точки визначає розмір шрифту для тексту в діалоговому вікні та її елементів керування. Гарнітури масиву є нульовим рядок Юнікоду, який указує ім'я гарнітури шрифту. Коли ці значення надається, система створює шрифту, заданого розміру і накреслення (якщо можливо) та надсилає повідомлення 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