WinApi - 获取标准背景颜色
WinApi - Get standard background color
我使用 clrTextBk
设置背景颜色。但是 Windows 系统有许多具有不同标准背景颜色的主题。例如,Windows XP 主题使用颜色#316ac5,经典主题使用颜色,如COLOR_HOTLIGHT
、#0a246a,以及任何其他颜色,如clrTextBk
。我可以尝试将 GetSysColor
与参数 COLOR_BACKGROUND
或 COLOR_DESKTOP
一起使用,但这种颜色不是 clrTextBk
的标准颜色。如何获取当前主题的标准背景颜色(clrTextBk
)?
回答(谢谢Cody Gray和andlabs):
clrTextBk
is a field of NMLVCUSTOMDRAW
我需要使用 GetSysColor(COLOR_HIGHLIGHT)
,以便获得所选文本的标准背景色。
我使用 clrTextBk
设置背景颜色。但是 Windows 系统有许多具有不同标准背景颜色的主题。例如,Windows XP 主题使用颜色#316ac5,经典主题使用颜色,如COLOR_HOTLIGHT
、#0a246a,以及任何其他颜色,如clrTextBk
。我可以尝试将 GetSysColor
与参数 COLOR_BACKGROUND
或 COLOR_DESKTOP
一起使用,但这种颜色不是 clrTextBk
的标准颜色。如何获取当前主题的标准背景颜色(clrTextBk
)?
回答(谢谢Cody Gray和andlabs):
clrTextBk
is a field ofNMLVCUSTOMDRAW
我需要使用 GetSysColor(COLOR_HIGHLIGHT)
,以便获得所选文本的标准背景色。