Die DRAWITEMSTRUCT -Struktur hat folgende form:
typedef Struct TagDRAWITEMSTRUCT {}
&Nbsp; UINT CtlType;
UINT CtlID;
UINT ItemID;
UINT ItemAction;
UINT ItemState;
HWND HwndItem;
HDC hDC;
RECT RcItem;
DWORD ItemData;
} DRAWITEMSTRUCT
Die DRAWITEMSTRUCT Struktur stellt, dass Informationen das Besitzerfenster haben muss, zu bestimmen, wie ein Ownerdrawn-Steuerelement oder Menüelement zu malen. Das Besitzerfenster des das Ownerdrawn-Steuerelement oder das Menüelement erhält einen Zeiger auf diese Struktur als Parameter lParam der Nachricht WM_DRAWITEM.
Mitglieder
CtlType
Der Steuerelementtyp. Die Werte für Steuerelementtypen sind wie folgt:
CtlID
Die Steuerelement-ID für ein Kombinationsfeld, Listenfeld oder Button. Dieser Member wird nicht verwendet für ein Menü.
itemID
Die Menü-Element-ID für ein Menü oder den Index des Elements in einem Listenfeld oder Kombinationsfeld. Für ein leeres Listenfeld oder Kombinationsfeld ist dieser Member einen negativen Wert, wodurch die Anwendung nur das Fokus-Rechteck an die Koordinaten vom RcItem Mitglied angegeben, obwohl es keine Elemente im Steuerelement gibt zu zeichnen. Der Benutzer kann somit gezeigt werden, ob das Listenfeld oder Kombinationsfeld den Eingabefokus besitzt. Die Einstellung der Bits in der ItemAction Mitglied bestimmt, ob das Rechteck gezeichnet werden, als ob das Listenfeld oder Kombinationsfeld den Eingabefokus besitzt.
itemAction
Definiert die Zeichnung erforderliche Maßnahmen. Dies wird eine oder mehrere der folgenden Bits sein.:
itemState
Gibt den visuellen Zustand des Elements, nach dem die aktuelle Zeichnung Aktion stattfindet. Das heißt, wenn ein Menüelement ist werden abgeblendet, die Staatsflagge, die ODS_GRAYED festgelegt wird. Die Status-Flags sind wie folgt:
hwndItem
Gibt das Fensterhandle des Steuerelements für Kombinationsfelder, Listenfelder und Schaltflächen. Gibt das Handle des Menüs (HMENU), die das Element für Menüs enthält.
hDC
Identifiziert einen Gerätekontext. Dabei Gerät muss beim Durchführen von Zeichnungsvorgänge für das Steuerelement verwendet werden.
rcItem
Ein Rectangle im Gerätekontext, angegeben durch den hDC -Member, der die Begrenzungen des Steuerelements gezeichnet werden definiert. Windows automatisch alles, was der Besitzer in den Gerätekontext für Kombinationsfelder, Listenfelder und Schaltflächen zeichnet clips, aber es nicht clip-Menüelemente. Wenn Sie Menüelemente zu zeichnen, muss der Besitzer nicht außerhalb der Grenzen des Rechtecks definiert durch das RcItem -Mitglied zeichnen.
itemData
Für ein Kombinations- oder Listenfeld enthält dieses Element den Wert, der die im Listenfeld durch eines der folgenden übergeben wurde:
Für ein Menü enthält dieses Element den Wert, der die das Menü durch eine der folgenden übergeben wurde:
Siehe auch&Nbsp;CWnd::OnDrawItem