WM_SYSCOLORCHANGE消息

更改系统颜色设置时,会将 WM_SYSCOLORCHANGE 消息发送到所有顶级窗口。

窗口通过其 WindowProc 函数接收此消息。

LRESULT CALLBACK WindowProc(
  HWND hwnd, 
  UINT  uMsg, 
  WPARAM wParam, 
  LPARAM lParam     
);

参数

wParam

未使用此参数。

lParam

未使用此参数。

备注

系统将 WM_PAINT 消息发送到受系统颜色更改影响的任何窗口。

具有使用现有系统颜色的画笔的应用程序应删除这些画笔,并使用新的系统颜色重新创建它们。

使用通用控件的顶级窗口必须将 WM_SYSCOLORCHANGE 消息转发给控件;否则,控件将不会收到颜色更改的通知。 这可确保常用控件使用的颜色与其他用户界面对象使用的颜色一致。 例如,工具栏控件使用“3D 对象”颜色绘制其按钮。 如果用户更改了 3D 对象颜色,但 WM_SYSCOLORCHANGE 消息未转发到工具栏,则工具栏按钮将保留其原始颜色,而系统中其他按钮的颜色也会更改。

要求

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

另请参阅

颜色概述

为消息着色

WM_PAINT