![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Рисование на рамке закладки TTabControl
Gero © (2004-09-21 08:51:00)Как нарисовать что-либо на рамке таба TTabControl?
Когда происходит CN_DRAWITEM, получается нарисовать как на самомо табе, так и за его пределами. А вот на рамке, имеющейся у каждого таба - никак.
Видимо, она рисуется уже после вызова CN_DRAWITEM.
Какое сообщение ловить чтобы рисовать именно на рамке?
Gero (2004-09-22 08:09:00) [1]
> DVM ©
Спасибо.
DVM (2004-09-21 21:10:00) [2]Скорее всего на рамке не получится нарисовать. Только как я сказал. Рамка рисуется внутри дефолтового обработчика WM_PAINT и кроме него никаких спец. сообщений никому TabControl не шлет и ему тоже. Он просто обновляет свою область окна.
DVM (2004-09-21 21:03:00) [3]
> Gero © (21.09.04 20:07) [5]
Оно будет посылаться, если назначить окну TabControl стиль OwnerDraw. Приходить сообщения будут родительскому окну.
В параметрах все нужное.
Не знаю, получится ли у тебя там рисовать на рамке, но это я делал по-другому.
Вобщем я заменил оконную процедуру TabControl на свою и написал для WM_PAINT свой обработчик. Получилось очень забавно. Я мог нарисвать вкладку хоть круглой, хоть в горошек. Сейчас исходников уже не найти, но там все было не очень сложно.
Gero (2004-09-21 20:07:00) [4]
> WM_DRAWITEM
Ставлю обработчик - он не выполняется вобще.
Не посылается ему WM_DRAWITEM...
DVM (2004-09-21 18:52:00) [5]
> Какое сообщение ловить чтобы рисовать именно на рамке?
WM_DRAWITEM
Gero (2004-09-21 18:36:00) [6]Нигде не видел. Просто хочу сделать свою прорисовку табов.
Amoeba (2004-09-21 18:24:00) [7]А где ты такое видел?
Gero (2004-09-21 17:52:00) [8]Хм, неужто никто не поможет?