Какой цвет RGB для Windows COLOR_WINDOW или COLOR_BACKGROUND?

В Windows Api и GDI вы можете использовать цвет фона окна по умолчанию для рисования кнопок и прочего (этот слегка сероватый цвет в Win98, WinXP + Classic Theme и т. д.).

Какое значение rgb для этого?

Итак, я могу эмулировать точный цвет в Allegro, используя al_map_rgb( r, g, b) ?


person ApprenticeHacker    schedule 02.02.2012    source источник
comment
ммм.. просто из любопытства, почему закрытое голосование?   -  person ApprenticeHacker    schedule 02.02.2012
comment
Закрытое голосование не по теме. Я думаю, что вопрос изначально кажется не по теме, поскольку он касается видимых пользователем частей пользовательского интерфейса Windows и их цвета, что не является непосредственным программированием. Тем не менее, я думаю, что принятый ответ, несомненно, является ответом на программирование и дает понять, что в контексте это вопрос программирования, и его не следует закрывать.   -  person Brooks Moses    schedule 02.02.2012


Ответы (2)


Это зависит от настроек пользователей.

Для получения DWORD, а затем используйте GetRValue, GetGValue и GetBValue для получения значений красных, зеленых и синих компонентов.

person Bobrovsky    schedule 02.02.2012

Хотя ответ Бобровского (используйте GetSysColor), вероятно, является правильным решением реальной проблемы, если вы хотите узнать теплый серый цвет по умолчанию независимо от настроек пользователя, это R = 212, G = 208, B = 200.

(Простым способом определить это было сделать снимок экрана окна, вставить его в Paint, использовать инструмент выбора цвета на немного серого цвета по умолчанию, а затем открыть диалоговое окно «Редактировать цвета», чтобы просмотреть значения RGB в нем. .)

person Brooks Moses    schedule 02.02.2012
comment
А еще лучше установить Color Cop и напрямую выбирать любой цвет на экране. - person Lucius; 02.02.2012
comment
Спасибо за публикацию фактического значения RGB для тех из нас, кто не работает под управлением Windows, поэтому не может просто сделать снимок экрана и использовать палитру цветов. - person Malvineous; 19.04.2021