WM_DRAWITEM消息

WM_DRAWITEM消息

当具有自绘风格的按钮、组合框、列表框或者菜单的可见部分发生改变时,就会发送WM_DRAWITEM消息给自绘控件所在的窗体。

窗口通过WindowProc函数接受WM_DRAWITEM消息

WindowProc函数定义如下:

LRESULT CALLBACK WindowProc(

HWND hwnd, //指向窗口的句柄

UINT uMsg WM_DRAWITEM消息

WPARAM wParam,  //control identifier(UINT)

LPARAM lParam //item data(LPDRAWITEMSTRUCT)

);

参数:

wParam

用来指定发送WM_DRAWITEM消息的控件标识符。如果该消息是由菜单发送的,则该参数为零。

lParam

指向一个DRAWITEMSTRUCT结构的指针,该结构包括一些关于要绘制的条目和要绘制的类型的信息。

返回值:

如果处理该消息,则必须返回TRUE

注意:

默认情况下,DefWindowProc函数为自绘列表框绘制焦点区域。

DRAWITEMSTRUCT结构的itemAction成员指定了应该要进行的绘制操作。

在处理该消息返回之前,应该要保证DRAWITEMSTRUCT结构的设备内容hDC处于默认的状态下(也就是不要改变设备环境的默认上下文)。

原文地址:https://www.cnblogs.com/goto/p/2577703.html