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

5
在Windows Api和GDI中,您可以使用默认窗口背景颜色来绘制按钮等内容(在Win98、WinXP +经典主题等中略带灰色)。那个颜色的RGB值是多少?这样我就可以使用al_map_rgb(r,g,b)在Allegro中模拟出完全相同的颜色了。

只是出于好奇,为什么要关闭投票? - ApprenticeHacker
关闭投票是因为“不属于主题”。我认为这个问题一开始看起来似乎确实与主题无关,因为它涉及到 Windows 用户界面中可见部分的颜色,这与直接编程无关。但是,我认为被接受的答案毫无疑问是一个“编程”答案,并且清楚地表明在上下文中这是一个编程问题,不应该被关闭。 - Brooks Moses
2个回答

7

这取决于用户的设置。

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


7
尽管Bobrovsky的答案(使用GetSysColor)可能是实际问题的正确解决方案,但如果您想了解默认的暖灰色而不考虑用户的设置,则为R = 212,G = 208,B = 200。
(确定这一点的简单方法是截取窗口的屏幕截图,将其粘贴到画图中,在默认灰色的一小部分上使用取色器工具,然后打开“编辑颜色”对话框以查看其中的RGB值。)

2
更好的方法是安装Color Cop,直接在屏幕上选择任何颜色。 - Lucius
谢谢您发布实际的RGB值,对于我们没有运行Windows的人来说这很有用,因为我们无法使用截图和颜色选择器。 - Malvineous
1
对于那些想要十六进制代码的人,这是 #d4d0c8。 - ecth

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接