有一个WinAPI函数获取系统颜色(COLOR_ACTIVEBORDER)
这应该返回此颜色,但在某些系统上,边框的实际颜色与标准颜色不同(显然,由于Windows的颜色自定义)。然而,获取系统颜色()
总是返回标准颜色,即灰色。
有什么方法可以得到系统使用的实际边框颜色吗?
更新我尝试过的几个变体:
var color=系统颜色。桌面;//对的var color1=系统颜色。控件文本;//不正确;始终为黑色,无论Windows主题处于活动状态var color=GetThemeSysColor(HTHEME.NULL,SystemColorIndex.color_DESKTOP);//对的var color1=GetThemeSysColor(HTHEME.NULL,SystemColorIndex.COLOR_BTNTEXT);//不正确的var theme=OpenThemeData(HWND.NULL,“按钮”);var color=GetThemeSysColor(主题,color_BTNTEXT);//不正确的var theme=OpenThemeData(_button.Handle,“button”);var color=GetThemeSysColor(主题,color_BTNTEXT);//不正确的