在所有者绘制Windows列表控件背景中使用什么颜色?

时间:2010-04-12 23:05:42

标签: c++ windows mfc

我的Windows程序中有一个所有者绘制的列表控件。我使用CListCtrl :: GetBkColor来获取背景颜色,对于选定的项目,我使用GetSysColor(COLOR_HIGHLIGHT)。这与Windows用于非所有者绘制的列表控件的内容相匹配,除了控件没有焦点的情况 - 然后将背景替换为灰色。

Windows是否使用其中一个GetSysColor常量来选择但未聚焦的背景?如果是这样,哪一个?

2 个答案:

答案 0 :(得分:6)

COLOR_INACTIVECAPTION(3),我想。

更新:不,看起来只是COLOR_BTNFACE(15)。

答案 1 :(得分:1)

啊,好的。有点摆弄,我已经确定它使用.Net中的SystemColors.Control颜色,这相当于C ++ COLOR_3DFACE

COLOR_BTNFACECOLOR_MENUCOLOR_MENUBAR在默认安装的Windows上也代表相同的颜色。