Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.01.09;
Скачать: CL | DM;

Вниз

аля DirectSkin   Найти похожие ветки 

 
strong ©   (2002-11-16 14:01) [0]

Кто нибудь пробовал разрабатывать технологию примения скинов для стандартных элементов программ как это сделано в DirectSkin. поделитесь опытом!


 
strong ©   (2002-11-18 12:49) [1]

И чего все молчат?
Неужели никто не интересовался проблемой нестандартной отрисовки органов уаравления Windows? Конечно с появлением Windows XP тема несколько старовата, но просто интересно разобраться как это сделано!
Где вы МАСТЕРА?!!!


 
Eugen Honeker   (2002-11-18 13:38) [2]

я незнаю что там DirectSkin делает, но на тему
нестандартной отрисовки:
вешай флаг XS_OWNERDRAW (например для "BUTTON" -> BS_OWNERDRAW итд.) и отрисовывай все сам.


 
strong ©   (2002-11-18 18:14) [3]

>Eugen Honeker
Можно немного поподробнее? Во-первых как вешать? (кусок кода).
Во-вторых: для всех Control такое подойдет? В тертьих: такой спосб работает только в Delphi?


 
Eugen Honeker   (2002-11-18 19:07) [4]

делфи тут ни причем, просто когда создаются control"ы на api
с помощью CreateWindow можно передать такой flag
как BS_OWNERDRAW, LBS_OWNERDRAW итд.
тогда эти control"ы не будут Windows"ом отрисовыватся, а Windows
будет посылать WM_DRAWITEM-message в message-loop твоей программы. а тут можно, отловив это сообщение самому
отрисовать control.

насщет куска кода, тут тебе придется самому повозится.
в инете и в msdn"е примеров больше чем надо.



 
strong ©   (2002-11-19 15:04) [5]

Да в интернете я уже посмотрел!
И справку по WinAPI тоже глянул. Вроде выходит, что не все control"ы так можно перерисовывать. Например как быть с полосой прокрутки? на нее флага XS_OWNERDRAW нету вроде? По крайней мере я не нашел!


 
Игорь Шевченко ©   (2002-11-19 15:20) [6]

Нету у полосы прокрутки такого флага. Придется заменять у него оконную процедуру (если это контрол) и обрабатывать сообщение, как минимум WM_PAINT


 
SPeller ©   (2002-11-19 16:07) [7]

Да уж, скролбары плохо поддаются контролю над ними, особенно если сделаны не отдельными контролами.


 
Игорь Шевченко ©   (2002-11-19 16:15) [8]

SPeller © (19.11.02 16:07)

А которые не отдельными контролами - это вообще не окна, а такая же часть неклиентской области окна, как, например, заголовок или строка меню :-)

С уважением,


 
strong ©   (2002-11-19 16:36) [9]

Но ведь существуют же программы, способные изменять внешний вид окон всех приложений одним махом. WindowsBlinds например. Они то как это делают? Я догадываюсь, что заменяют фуенкции стандартной отрисовки, но какие? Где разработчики берут таккую информацию? Есть ли она у вас?


 
Игорь Шевченко ©   (2002-11-19 16:45) [10]

Эта...вот темы в Windows XP тоже изменяют внешний вид приложений одним махом. И никого это не удивляет...

Такую информацию разработчики берут в MSDN, читают описания сообщений, ставят хуки WH_CALLWNDPROC, WH_GETTMESSAGE и меняют...


 
Shuric   (2002-11-20 15:30) [11]

Зачем такие сложности. Скачай библиотеку с www.almdev.com



Страницы: 1 вся ветка

Текущий архив: 2003.01.09;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.013 c
14-25050
han_malign
2002-12-19 11:49
2003.01.09
Народ, напомните что нужно к ссылке темы прилепить, что-бы ...


14-25086
han_malign
2002-12-18 16:59
2003.01.09
Нарочно не придумаешь...


14-25076
Driverrr
2002-12-21 10:19
2003.01.09
Нужны деньги!


8-24977
seemann
2002-09-21 17:11
2003.01.09
Bass.dll


3-24815
victor_ch
2002-12-13 13:59
2003.01.09
Ошибка при использовании BDE с SYBASE