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
Идентификатор элемента управления для поля со списком, список или кнопку. Этот элемент не используется для меню.
идентификатор элемента
Идентификатор элемента меню для меню или индекс элемента в списке или поле со списком. Для пустого списка или поля со списком этот член является отрицательное значение, которое позволяет приложению использовать только прямоугольник фокуса в точке с координатами обозначенные rcItem -членами, даже если нет элементов в элементе управления. Пользователь может быть показан таким образом ли список или поле со списком имеет фокус ввода. Параметр биты в itemAction член определяет, является ли прямоугольник можно сделать как будто фокус ввода списка или поля со списком.
itemAction
Определяет графического необходимых действий. Это будет одно или несколько из следующих битов:
itemState
Задает визуальное состояние элемента после текущего рисунка происходит действие. То есть если элемент меню будет недоступен, государственный флаг, который будет установлен ODS_GRAYED . Государственные флаги, являются:
hwndItem
Определяет дескриптор окна элемента управления для поля со списком, списки и кнопки. Определяет обработчик меню (HMENU), содержащее элемент для меню.
hDC
Идентифицирует контекст устройства. Этот контекст устройства должен использоваться при выполнении операций рисования на элементе управления.
rcItem
Объект rectangle в контексте устройства, задаваемом hDC член, который определяет границы элемента управления, можно сделать. Windows автоматически отсекает все, что владелец привлекает в контекст устройства для полей со списком, списки и кнопки, но не отсекать пункты меню. При рисовании элементов меню, владелец не должен привлечь вне границ прямоугольника, определенного членом rcItem.
itemData отсутствует
Для поля со списком или списка этот элемент содержит значение, которое было передано в списке один из следующих:
Для меню этот элемент содержит значение, был принят в меню один из следующих:
См. также CWnd::OnDrawItem