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.

 typedef struct tagDRAWITEMSTRUCT {/ / UINT CtlType; dış 
    UINT CtlID; 
    UINT ItemId; 
    UINT itemAction; 
    UINT itemState; 
    hwnd hwndItem; 
    hdc hDC; 
    rect rcItem; 
    dword ItemData; 
} DRAWITEMSTRUCT 

 

Üyeler

CtlType
Denetim türünü belirtir. Bu üye aşağıdaki değerlerden biri olabilir:
Değer Anlamı
ODT_BUTTON Sahibi çizilmiş düğmesi
ODT_COMBOBOX Sahibi çizilmiş açılan kutu
ODT_LISTBOX Sahibi çizilmiş liste kutusu
ODT_LISTVIEW Liste Görünümü denetimi
ODT_MENU Sahibi çizilmiş menü öğesi
ODT_STATIC Statik kontrol sahibi çizilmiş
ODT_TAB Sekme denetimi

CtlID
Açılan kutu, liste kutusu, düğme veya statik denetimi tanımlayıcısını belirtir. Bu üye bir menü öğesi için kullanılmaz.
itemId
Bir liste kutusunda veya açılan kutuda bir menü öğesi veya öğenin dizini menü madde tanımlayıcısı belirtir. Bu üye, bir boş liste kutusu veya açılan kutu için –1 olabilir. Bu rağmen hiçbir öğe denetimde rcItem üye tarafından belirtilen koordinatları, sadece odak dikdörtgeni çizmek için uygulama sağlar. Bu kullanıcı liste kutusu veya birleşik giriş kutusu odak olup olmadığını gösterir. Bitleri itemAction üyesinin nasıl ayarlanacağını dikdörtgen liste kutusu veya açılan kutu odağın sanki çizilmiş olup olmadığını belirler.
itemAction
Gerekli çizim eylemi belirtir. Bu üye, bir veya daha aşağıdaki değerleri olabilir.:
Değer Anlamı
ODA_DRAWENTIRE Denetimin tümünü çizilmesi gerekiyor.
ODA_FOCUS Denetime kayıp veya klavye odağını kazandı. İtemState üye denetim odağa sahip olup olmadığını belirlemek için denetlenmesi.
ODA_SELECT Seçim durum değişti. Yeni seçim durumu belirlemek için itemState üye denetlenmesi.

itemState
Geçerli çizim eylemi gerçekleştikten sonra görsel öğenin durumunu belirtir. Bu üye aşağıdaki değerlerden bir kombinasyonu olabilir:
Değer Anlamı
ODS_CHECKED Menü öğesinin kontrol etmektir. Bu bit sadece bir menüde kullanılır.
ODS_COMBOBOXEDIT Çizim, bir sahibi çizilmiş açılan kutu seçimi alanında (düzenleme denetimi) yer alır.
ODS_DEFAULT Öğenin varsayılan öğedir.
ODS_DISABLED Devre dışı bırakılmış olarak çizilmesi maddedir.
ODS_FOCUS Öğeyi klavye odağını vardır.
ODS_GRAYED Gri üzere öğe değil. Bu bit sadece bir menüde kullanılır.
ODS_SELECTED Menü öğesinin durumu seçilir.

hwndItem
Açılan kutuları, liste kutuları, düğmeler ve statik denetimler denetim işleci. Menüler için bu üye öğesi içeren menüyü tanımlar.
hDC
Bir aygıt içeriğini işlemek; Bu aygıt içerik denetimi çizim işlemleri gerçekleştirirken kullanılmalıdır.
rcItem
Çekilecek denetiminin sınırlarını tanımlayan dikdörtgen belirtir. HDC üye tarafından belirtilen aygıt bağlamında bu dikdörtgendir. Sistem otomatik olarak bir şey sahibi pencerede açılan kutuları, liste kutuları ve düğmeler için aygıt içeriği çizer ama menü öğeleri klip değil kırpar. Menü öğelerini çizim yaparken sahibi pencere rcItem üye tarafından tanımlanan dikdörtgenin sınırları dışında çizmek gerekir değil.
itemData
Menü öğesi ile ilişkilendirilmiş uygulama tanımlı 32-bit değerini belirtir. Bir denetim için bu parametre son LB_SETITEMDATA ya da CB_SETITEMDATA mesajı liste kutusu veya açılan kutu için atanan değeri belirtir. Liste kutusu veya açılan kutu LBS_HASSTRINGS ya da CBS_HASSTRINGS stil varsa, bu değeri başlangıçta sıfırdır. Aksi takdirde, bu değer ilk liste kutusu veya birleşik giriş kutusu aşağıdaki iletilerden birini lParam parametresinde geçirilen değerdir:

CtlType odt_button ya da ODT_STATIC ItemData sıfır ise,.

QuickInfo

nbsp; Windows &NT: sürüm 3.1 veya üstü gerektirir.
Windows:Windows 95 veya sonraki sürümleri gerektirir.
Windows ce:Sürüm 1.0 veya daha ilerisini gerektirir.
Header:WINUSER.h ilan.

Ayrıca bkz:

Açılan kutular genel bakış, Birleşik giriş kutusu yapıları, CB_ADDSTRING, CB_INSERTSTRING, CB_SETITEMDATA, LB_ADDSTRING, LB_INSERTSTRING, LB_SETITEMDATA, WM_DRAWITEM

Index