На самом деле этот вопрос меня уже добивает своей тупостью и безисходностью. Нигде нет справки по тому как управлять цветом в стандартных элементах управления, например check box(button со стилем bs_Autocheckbox)
Окно у меня серое, а элемент управления белый, и никак иначе. что делать?
Здравствуйте, MySerge, Вы писали:
MS>На самом деле этот вопрос меня уже добивает своей тупостью и безисходностью. Нигде нет справки по тому как управлять цветом в стандартных элементах управления, например check box(button со стилем bs_Autocheckbox)
А как же MSDN и сообщения WM_CTLCOLOR* ?
MS>Окно у меня серое, а элемент управления белый, и никак иначе. что делать?
Ни разу такого не видел, честно говоря.
Здравствуйте, MySerge, Вы писали:
MS>На самом деле этот вопрос меня уже добивает своей тупостью и безисходностью. Нигде нет справки по тому как управлять цветом в стандартных элементах управления, например check box(button со стилем bs_Autocheckbox)
MS>Окно у меня серое, а элемент управления белый, и никак иначе. что делать?
Еще есть такая функция
DrawFrameControl
которая рисует все кнопки на заголовке, все основные контролы: checkboxЫ, radiobuttonЫ и т.п.
Можно вокруг нее поколдовать (в MSDN там или ручками свое создать). Полезная в любом случае, например, если захочешь свою кнопочку в заголовок добавить или свой контрол нарисовать.
У нее, в частности, есть флаг
DFCS_TRANSPARENT
P.S. Кстати, подведите в броузере курсор к надписи DrawFrameControl, снизу появится ссылка на соответствующую функцию в MSDN. Нажмите кнопку мыши, курсор изменится на руку. При этом открываться ничего не будет. Кстати, рука появляется даже при отпущенной кнопке мыши если просто подвести курсор чуть выше или чуть ниже серой полоски. Ссылка, кстати,
эта.
Здравствуйте, SchweinDeBurg, Вы писали:
SDB>А как же MSDN и сообщения WM_CTLCOLOR* ?
MS>>Окно у меня серое, а элемент управления белый, и никак иначе. что делать?
SDB>Ни разу такого не видел, честно говоря.
Именно на это сообщение я и наткнулся в msdn (сразу поле того как задал вопрос). Очень странно что раньше не видел

Действительно все библиотеки используют это сообщение и настраивают цвет. А если этого не делать — то цвет похоже остается белый и это правда.
История такова: Свою программу я писал еще на Win16. (Не помню чтобы там было WM_CTLCOLOR) Там я все кнопки перерисовывал серым сам. Совсем недавно его (перекомпилировал в Win32 кому интересно могу рассказать подробнее)И понадеялся что само собой станет серым. но не тут то было... Теперь попробую WM_CTLCOLOR. Наверное сработает.
Кстати все эти проблемы только с окном. В диалоге есть специальный стиль который делает все элементы серыми по умолчанию.
Если интересно, то библиотека которая оставляет цвет белым — owl. У меня есть 32битная ее версия. Забавная библиотека. до сих пор живет.
Спасибо за ответ.
Здравствуйте, Apapa, Вы писали:
A>Еще есть такая функция
A>A>DrawFrameControl
A>
A>которая рисует все кнопки на заголовке, все основные контролы: checkboxЫ, radiobuttonЫ и т.п.
A>Можно вокруг нее поколдовать (в MSDN там или ручками свое создать). Полезная в любом случае, например, если захочешь свою кнопочку в заголовок добавить или свой контрол нарисовать.
если не секрет — каким же образом можно над ней поколдовать?