-
Привет.
Я только учусь. подскажите как изменить цвет TPanel на форме, при помощи WinAPI?
Никак не получается пробовал SetDCBrushColor .
Знаю что есть свойство Color, но я сейчас разбираюсь в API.
Спасибо!
-
зачем? в чужом приложении, что-ли?
-
Для того, чтобы цвет, которым ты хочешь закрасить панель, остался при её перерисовке, тебе необходимо самому переопределить обработчик сообщений этой панели и внутри него вручную задать реакцию на WM_CTLCOLORSTATIC. http://msdn.microsoft.com/en-us/library/bb787524(VS.85).aspx
-
Я хочу научится закрашивать любой стандартный контрол. В своей программе не чужой.
> 0x00FF00
Ага я понял, а кнопку таким же методом можно закрашивать?
-
кнопка, увы, на такое не реагирует (не реагировала, всяко, во времена win98; далее windows была мною оставлена — поэтому насчёт других версий не знаю).
-
> Я хочу научится закрашивать любой стандартный контрол
Delphi-йский контрол отличается от стандартного. TPanel не является стандартным контролом.
Кстати, каким боком CTLCOLORSTATIC относится к панели ?
-
вот как раз кнопку так закрашивать можно ибо у нее есть CNCtlColorBtn
-
> Кстати, каким боком CTLCOLORSTATIC относится к панели ?
Попытался протелепатировать вопрос, и пришёл к выводу, что если ОП использует винапи, то в качестве ТПанели использует окно класса STATIC, по привычке называя его ТПанелью.
-
...причём, судя по его ответу, протелепатировал я верно =)
|