Форум: "WinAPI";
Текущий архив: 2003.01.09;
Скачать: [xml.tar.bz2];
Внизаля 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 вся ветка
Форум: "WinAPI";
Текущий архив: 2003.01.09;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.031 c