什么是Windows COLOR_WINDOW或COLOR_BACKGROUND的RGB颜色?

时间:2012-02-02 06:59:12

标签: c windows winapi colors rgb

在Windows Api和GDI中,您可以使用默认窗口背景颜色绘制按钮和内容(Win98,WinXP +经典主题等上的浅灰色)。

rgb值是多少?

所以我可以使用al_map_rgb( r, g, b)来模拟Allegro中的确切颜色?

2 个答案:

答案 0 :(得分:6)

这取决于用户设置。

您应该使用GetSysColor函数检索DWORD值,然后使用GetRValueGetGValueGetBValue来检索红色,绿色和蓝色组件值。

答案 1 :(得分:5)

尽管Bobrovsky的答案(使用GetSysColor)可能是解决实际问题的正确方法,但如果你想知道默认的暖灰色而不管用户的设置如何,那么它的R = 212,G = 208,B = 200。 / p>

(确定这个的简单方法是获取窗口的屏幕截图,将其粘贴到Paint中,使用颜色选择器工具上的一些默认灰色,然后打开“编辑颜色”对话框以查看RGB其中的价值观。)