WinApi - 获取标准背景颜色

WinApi - Get standard background color

我使用 clrTextBk 设置背景颜色。但是 Windows 系统有许多具有不同标准背景颜色的主题。例如,Windows XP 主题使用颜色#316ac5,经典主题使用颜色,如COLOR_HOTLIGHT、#0a246a,以及任何其他颜色,如clrTextBk。我可以尝试将 GetSysColor 与参数 COLOR_BACKGROUNDCOLOR_DESKTOP 一起使用,但这种颜色不是 clrTextBk 的标准颜色。如何获取当前主题的标准背景颜色(clrTextBk)?

回答(谢谢Cody Grayandlabs):

clrTextBk is a field of NMLVCUSTOMDRAW

我需要使用 GetSysColor(COLOR_HIGHLIGHT),以便获得所选文本的标准背景色。