NMCUSTOMDRAW-Struktur (commctrl.h)
Enthält spezifische Informationen für einen NM_CUSTOMDRAW Benachrichtigungscode.
Syntax
typedef struct tagNMCUSTOMDRAWINFO {
NMHDR hdr;
DWORD dwDrawStage;
HDC hdc;
RECT rc;
DWORD_PTR dwItemSpec;
UINT uItemState;
LPARAM lItemlParam;
} NMCUSTOMDRAW, *LPNMCUSTOMDRAW;
Member
hdr
Typ: NMHDR
Eine NMHDR-Struktur , die Informationen zu diesem Benachrichtigungscode enthält.
dwDrawStage
Typ: DWORD
Die aktuelle Zeichnungsphase. Dies ist einer der folgenden Werte.
Wert | Bedeutung |
---|---|
|
|
|
Nach Abschluss des Löschzyklus. |
|
Nach Abschluss des Malzyklus. |
|
Bevor der Löschzyklus beginnt. |
|
Bevor der Malzyklus beginnt. |
|
|
|
Gibt an, dass die Elemente dwItemSpec, uItemState und lItemlParam gültig sind. |
|
Nachdem ein Element gelöscht wurde. |
|
Nachdem ein Element gezeichnet wurde. |
|
Bevor ein Element gelöscht wird. |
|
Bevor ein Element gezeichnet wird. |
|
Flag kombiniert mit CDDS_ITEMPREPAINT oder CDDS_ITEMPOSTPAINT, wenn ein Unterelement gezeichnet wird. Dies wird nur festgelegt, wenn CDRF_NOTIFYITEMDRAW von CDDS_PREPAINT zurückgegeben wird. |
hdc
Typ: HDC
Ein Handle für den Gerätekontext des Steuerelements. Verwenden Sie diesen HDC, um GDI-Funktionen auszuführen.
rc
Typ: RECT
Die RECT-Struktur , die das umgebende Rechteck des gezeichneten Bereichs beschreibt. Dieser Member wird nur durch die CDDS_ITEMPREPAINT-Benachrichtigung initialisiert. Version 5.80. Dieser Member wird auch durch die CDDS_PREPAINT-Benachrichtigung initialisiert.
dwItemSpec
Typ: DWORD_PTR
Die Elementnummer. Was in diesem Member enthalten ist, hängt vom Typ des Steuerelements ab, das die Benachrichtigung sendet. In der NM_CUSTOMDRAW Benachrichtigungsreferenz finden Sie informationen zum spezifischen Steuerelement, um zu bestimmen, was in diesem Member enthalten ist.
uItemState
Typ: UINT
Der aktuelle Elementzustand. Dieser Wert ist eine Kombination der folgenden Flags.
Wert | Bedeutung |
---|---|
|
Das Element ist aktiviert. |
|
Das Element befindet sich im Standardzustand. |
|
Das Element ist deaktiviert. |
|
Das Element befindet sich im Fokus. |
|
Das Element ist grau unterlegt. |
|
Das Element befindet sich derzeit unter dem Zeiger ("heiß"). |
|
Das Element befindet sich in einem unbestimmten Zustand. |
|
Das Element ist markiert. Die Bedeutung wird durch die Implementierung bestimmt. |
|
Das Element ist ausgewählt.
Hinweis Dieses Flag funktioniert nicht ordnungsgemäß für steuerelemente mit der vom Besitzer gezeichneten Listenansicht, die die LVS_SHOWSELALWAYS formatieren. Für diese Steuerelemente können Sie bestimmen, ob ein Element ausgewählt wird, indem Sie LVM_GETITEMSTATE (oder ListView_GetItemState) verwenden und nach dem flag LVIS_SELECTED suchen.
|
|
Version 6.0.Das Element zeigt seine Tastaturhinweise an. Beachten Sie, dass Comctl32 Version 6 nicht verteilbar ist. Betriebssysteme. Um Comctl32.dll Version 6 zu verwenden, geben Sie sie im Manifest an. Weitere Informationen zu Manifesten finden Sie unter Aktivieren von visuellen Formatvorlagen. |
|
Das Element ist Teil eines Steuerelements, das sich derzeit unter dem Mauszeiger befindet ("heiß"), aber das Element ist selbst nicht "heiß". Die Bedeutung wird durch die Implementierung bestimmt. |
|
Das Element ist Teil eines Splitbuttons, das sich derzeit unter dem Mauszeiger befindet ("heiß"), aber das Element ist selbst nicht "heiß". Die Bedeutung wird durch die Implementierung bestimmt. |
|
Das Element ist derzeit das Ablageziel eines Drag-and-Drop-Vorgangs. |
lItemlParam
Typ: LPARAM
Anwendungsdefinierte Elementdaten.
Hinweise
Der Wert, den Ihre Anwendung zurückgibt, hängt vom aktuellen Zeichnungsstadium ab. Der dwDrawStage-Member der zugeordneten NMCUSTOMDRAW-Struktur enthält einen Wert, der die Zeichnungsstufe angibt. Wenn der dwDrawStage-Member gleich CDDS_PREPAINT und CDDS_PREERASE ist, senden einige Steuerelemente zuerst die CDDS_PREERASE Nachricht und erwarten, dass der Rückgabewert angibt, welche nachfolgenden Nachrichten gesendet werden. Ein Codebeispiel, das Zustände und Zeichnungsphasen veranschaulicht, finden Sie unter Anpassen der Darstellung eines Steuerelements mithilfe von benutzerdefiniertem Zeichnen.
Anforderungen
Unterstützte Mindestversion (Client) | Windows Vista [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [nur Desktop-Apps] |
Kopfzeile | commctrl.h |