【发布时间】:2010-01-13 13:07:56
【问题描述】:
我正在用黑色背景上的白色文本更新 Win32 应用程序的 GUI。这对我的内容来说很简单。但是我怎样才能改变我的子窗口(标题栏、滚动条等)的颜色。我知道有WM_CTLCOLORDLG 来设置对话框的颜色。我也知道有WM_NCPAINT,但这会将所有绘画(即滚动条)留给我。我想要的只是设置我选择的颜色。
【问题讨论】:
-
Win32 API 非常倾向于为用户提供她在使用显示控制面板小程序选择首选主题时选择的颜色。是的,您可以自己绘画来强制选择颜色。
-
标题(标题栏)不是子窗口;它是您窗口的非客户端(
WM_NCPAINT中的NC)区域的一部分。 -
我说的是有自己的标题栏的子窗口。该应用程序创建了其中的一些。他们的黑底灰标题与应用程序的其余部分冲突,现在是黑底白字。
标签: c++ user-interface winapi