NM_CUSTOMDRAW (按钮) 通知代码

通知按钮控件的父窗口有关按钮上的自定义绘制操作。

按钮控件以 WM_NOTIFY 消息的形式发送此通知代码。

NM_CUSTOMDRAW

    lpNMCustomDraw = (LPNMCUSTOMDRAW) lParam;

参数

lParam

指向 NMCUSTOMDRAW 结构的指针,该结构包含有关绘图操作的信息。 此结构的 dwItemSpec 成员包含所绘制项的索引,此结构的 lItemlParam 成员包含该项的 lParam

返回值

应用程序可以返回的值取决于当前绘图阶段。 关联的 NMCUSTOMDRAW 结构的 dwDrawStage 成员包含一个指定绘图阶段的值。 必须返回以下值之一。

返回代码 说明
CDRF_NOTIFYPOSTERASE
控件将在擦除项后通知父级。 仅当 dwDrawStage 等于 CDDS_PREERASE 时,才能使用此方法。
CDRF_NOTIFYPOSTPAINT
控件将在绘制项后通知父级。 仅当 dwDrawStage 等于 CDDS_PREPAINT 时,才能使用此方法。
CDRF_SKIPDEFAULT
应用程序手动绘制项。 控件不会绘制项。 当 dwDrawStage 等于 CDDS_PREERASE 或 CDDS_PREPAINT 时,可以使用此方法。

备注

如果按钮控件标记为 ownerdraw (BS_OWNERDRAW) ,则不会发送NM_CUSTOMDRAW通知代码。

有关进一步的讨论,请参阅 使用自定义绘图

注意

若要使用此通知代码,必须提供指定Comclt32.dll版本 6.0 的清单。 有关清单的详细信息,请参阅 启用视觉样式

要求

要求
最低受支持的客户端
Windows Vista [仅限桌面应用]
最低受支持的服务器
Windows Server 2003 [仅限桌面应用]
标头
Commctrl.h (包括 Windows.h)