Aşağıdaki formu DRAWITEMSTRUCT yapıya sahiptir:
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 yapısı, bilgi sahibi pencere denetim sahibi çizilmiş veya menü öğesini boya nasıl belirleneceği olmalıdır sağlar. Sahibi pencere denetim sahibi çizilmiş veya menü öğesi, WM_DRAWITEM iletisinin lParam parametresinin bu yapısı için işaretçi alır.
Üyeler
CtlType
Denetim türü. Denetim türleri için değerler aşağıdaki gibidir:
CtlID
Açılan kutu, liste kutusu veya düğme denetiminin kimliği. Bu üye için bir menü kullanılmaz.
itemId
Bir menü veya bir liste kutusu veya açılan kutu Madde Dizin menü öğesi Kımlığı. Bir boş liste kutusu veya açılan kutu için bu uygulamanın rağmen hiçbir öğe denetimde rcItem üye tarafından belirtilen koordinatları, sadece odak dikdörtgeni çizmek sağlar, negatif bir değer üyesidir. Kullanıcı, liste kutusu veya açılan kutu Giriş odağı olup böylece gösterilebilir. İtemAction üye bitlerin dikdörtgen liste kutusu veya birleşik giriş kutusu odak giriş sanki çizilmiş olup olmadığını belirler.
itemAction
Gerekli çizim eylemi tanımlar. Bu bir veya daha aşağıdaki bitlerden olacak:
itemState
Geçerli çizim eylemi gerçekleştikten sonra görsel öğenin durumunu belirtir. Yani eğer bir menü öğesi için soluk, ods_grayed kurulacak devlet bayrağı. Devlet bayrakları gibidir.:
hwndItem
Açılan kutuları, liste kutuları ve düğmeler için denetimin pencere tanıtıcıyı belirtir. Madde için menüler içeren menüyü (HMENU'nun) tutamacını belirtir.
hDC
Bir aygıt içeriğini tanımlar. Bu aygıt içerik denetimi çizim işlemleri gerçekleştirirken kullanılmalıdır.
rcItem
Bir dikdörtgen çizilmesi için denetiminin sınırlarını tanımlayan hDC üye tarafından belirtilen aygıt bağlamında. Windows otomatik olarak bir şey sahibi açılan kutuları, liste kutuları ve düğmeler için aygıt içeriği çizer klipler, ama o menü öğeleri küçük değil. Menü öğelerini çizim yaparken sahibi rcItem üye tarafından tanımlanan dikdörtgenin sınırları dışına çekmek gerekir değil.
itemData
Bir açılan kutu veya liste kutusu için bu üye liste kutusuna aşağıdakilerden birini geçti değeri içerir.:
İçin bir menü, bu üye menü aşağıdakilerden birini geçti değeri içerir.:
Ayrıca bkz: CWnd::OnDrawItem