DRAWITEMSTRUCT структура має такий вигляд:
typedef типу struct {tagDRAWITEMSTRUCT
nbsp; UI&NT CtlType;
UINT CtlID;
UINT itemID;
UINT itemAction;
UINT itemState;
HWND hwndItem;
HDC hDC;
RECT rcItem;
DWORD itemData;
} DRAWITEMSTRUCT
DRAWITEMSTRUCT структура забезпечує інформації власника вікна повинні мати, щоб визначити спосіб намалювати, власник звертається керування або пункт меню. Власник звертається керування або пункт меню вікно власник отримує вказівник на цю структуру як параметр lParam WM_DRAWITEM повідомлення.
Члени
CtlType
Тип елемента керування. Отримано такі значення для типу елемента керування:
CtlID
Поле зі списком, список або кнопку ID. Цей компонент не використовується для меню.
itemID
Пункт меню код меню або індекс елемента у списку або полі зі списком. Пустий список або поле зі списком цей компонент є від'ємне значення, що дозволяє застосовувати для малювання лише прямокутник фокусу на координат визначений член rcItem , навіть якщо немає елементів в елементі керування. Користувач може бути таким чином показано чи список або поле зі списком має фокус вводу. Налаштування біти в itemAction член визначає чи прямокутник бути звернено як ніби список або поле зі списком має введення фокус.
itemAction
Визначає графічних необхідних дій. Це буде один або декілька таких біти:
itemState
Визначає візуальних стан елемента, після поточного графічного дія відбувається. Якщо пункт меню буде неактивний, Державний прапор ODS_GRAYED буде встановлено. Державні прапори є наступні:
hwndItem
Визначає дескриптор вікна елемента керування поля зі списком, список полів і кнопки. Визначає дескриптор меню (HMENU), що містить елемент, для меню.
hDC
Визначає пристрій контексті. Цей пристрій контексті повинні використовуватися при виконанні графічних операцій на управління.
rcItem
Прямокутник контексту пристрою, визначених hDC -члена, яка визначає межі контролю звертається. Windows автоматично кліпи, все, що власник звертає в пристрій контекст для поля зі списком, списків та кнопки, але це не кліп пунктів меню. Коли графічні елементи меню, власник не повинна спиратися поза межами прямокутника, визначеного членом rcItem.
itemData
Поле зі списком або списку цей компонент містить значення, яке був прийнятий до списку на одну з таких:
Меню цей компонент містить значення, що був прийнятий до меню на одну з таких:
Дивіться також CWnd::OnDrawItem