Share via


NM_CUSTOMDRAW Benachrichtigungscode

Benachrichtigt das übergeordnete Fenster eines Steuerelements über benutzerdefinierte Zeichnungsvorgänge. Dieser Benachrichtigungscode wird in Form einer WM_NOTIFY Nachricht gesendet.

NM_CUSTOMDRAW

#ifdef LIST_VIEW_CUSTOM_DRAW

    lpNMCustomDraw = (LPNMLVCUSTOMDRAW) lParam;

#elif TOOL_TIPS_CUSTOM_DRAW

    lpNMCustomDraw = (LPNMTTCUSTOMDRAW) lParam;

#elif TREE_VIEW_CUSTOM_DRAW

    lpNMCustomDraw = (LPNMTVCUSTOMDRAW) lParam;

#elif TOOL_BAR_CUSTOM_DRAW

    lpNMCustomDraw = (LPNMTBCUSTOMDRAW) lParam;

#else

    lpNMCustomDraw = (LPNMCUSTOMDRAW) lParam;

#endif

Parameter

lParam

Ein Zeiger auf eine benutzerdefinierte Zeichnungsstruktur, die Informationen zum Zeichnungsvorgang enthält. Die folgende Liste gibt die Steuerelemente und die zugehörigen Strukturen an.

Control Benutzerdefinierte Zeichnungsstruktur
Rebar, Trackbar und Header NMCUSTOMDRAW
Listenansicht NMLVCUSTOMDRAW
QuickInfo NMTTCUSTOMDRAW
Strukturansicht NMTVCUSTOMDRAW
Symbolleiste NMTBCUSTOMDRAW

Rückgabewert

Der Wert, den Ihre Anwendung zurückgeben kann, hängt vom aktuellen Zeichnungsstadium ab. Der dwDrawStage-Member der zugeordneten NMCUSTOMDRAW-Struktur enthält einen Wert, der die Zeichnungsstufe angibt. Sie müssen einen der folgenden Werte zurückgeben.

Rückgabecode Beschreibung
CDRF_DODEFAULT
Das Steuerelement zeichnet sich selbst. Es werden keine zusätzlichen NM_CUSTOMDRAW Benachrichtigungscodes für diesen Farbzyklus gesendet. Dieses Flag kann nicht mit anderen Flags verwendet werden.
CDRF_DOERASE
Das Steuerelement zeichnet nur den Hintergrund.
CDRF_NEWFONT
Ihre Anwendung hat eine neue Schriftart für das Element angegeben. das Steuerelement verwendet die neue Schriftart. Weitere Informationen zum Ändern von Schriftarten finden Sie unter Ändern von Schriftarten und Farben. Dies tritt auf, wenn dwDrawStage gleich CDDS_ITEMPREPAINT.
CDRF_NOTIFYITEMDRAW
Das -Steuerelement benachrichtigt das übergeordnete Element über alle elementbezogenen Zeichnungsvorgänge. Vor und nach dem Zeichnen von Elementen werden NM_CUSTOMDRAW Benachrichtigungscodes gesendet. Dies tritt auf, wenn dwDrawStage gleich CDDS_PREPAINT.
CDRF_NOTIFYPOSTERASE
Das Steuerelement benachrichtigt das übergeordnete Element, nachdem ein Element entfernt wurde. Dies tritt auf, wenn dwDrawStage gleich CDDS_PREPAINT.
CDRF_NOTIFYPOSTPAINT
Das Steuerelement sendet einen NM_CUSTOMDRAW Benachrichtigungscode, wenn der Malzyklus für das gesamte Steuerelement abgeschlossen ist. Dies tritt auf, wenn dwDrawStage gleich CDDS_PREPAINT.
CDRF_NOTIFYSUBITEMDRAW
Ihre Anwendung erhält einen NM_CUSTOMDRAW Benachrichtigungscode, wobei dwDrawStage auf CDDS_ITEMPREPAINT | CDDS_SUBITEM, bevor jedes Listenansichtsunterelement gezeichnet wird. Anschließend können Sie Schriftart und Farbe für jedes Unterelement separat angeben oder CDRF_DODEFAULT zur Standardverarbeitung zurückgeben. Dies tritt auf, wenn dwDrawStage gleich CDDS_ITEMPREPAINT.
CDRF_SKIPDEFAULT
Ihre Anwendung hat das Element manuell gezeichnet. Das -Steuerelement zeichnet das Element nicht. Dies tritt auf, wenn dwDrawStage gleich CDDS_ITEMPREPAINT.
CDRF_SKIPPOSTPAINT
Das Steuerelement zeichnet das Fokusrechteck nicht um ein Element.

Bemerkungen

Derzeit unterstützen die folgenden Steuerelemente benutzerdefinierte Zeichnungsfunktionen: Kopfzeile, Listenansicht, Leiste, Symbolleiste, QuickInfo, Trackleiste und Strukturansicht. Benutzerdefiniertes Zeichnen wird auch für Schaltflächensteuerelemente unterstützt, wenn Sie über ein Anwendungsmanifest verfügen, um sicherzustellen, dass Comctl32.dll Version 6 verfügbar ist.

Wenn diese Meldung in einer Dialogprozedur behandelt wird, müssen Sie den Rückgabewert als Teil der Fensterdaten festlegen, bevor TRUE zurückgegeben wird. Weitere Informationen finden Sie unter DialogProc.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows Server 2003 [nur Desktop-Apps]
Header
Commctrl.h

Siehe auch

Konzept

Benutzerdefiniertes Zeichnen