Я имею привлеченный владельцами контроль списком в своей Windows-программе. Я использую CListCtrl:: GetBkColor для получения цвета фона, и для выбранного пункта я использую GetSysColor (COLOR_HIGHLIGHT). Это соответствует тому, что Windows использует для не владелец оттянутые средства управления списком, за исключением случая, где управление не фокусируется - затем, фон заменяется серым.
Windows использует одну из констант GetSysColor для выбранного, но несфокусированного фона? Если так, который?
COLOR_INACTIVECAPTION
(3), я думаю.
Обновление: Нет, похоже, это просто COLOR_BTNFACE
(15).
А, ладно. Немного повозившись, я определил, что он использует цвет SystemColors.Control
в .Net, который является эквивалентом C ++ COLOR_3DFACE
COLOR_BTNFACE
, COLOR_MENU
и COLOR_MENUBAR
также представляют один и тот же цвет при установке Windows по умолчанию.