Вниз
Скачать: CL | DM;

перерисовка заголовка   Найти похожие ветки 

 
Eugene_Jek_Efimochkin   (2002-08-18 00:43) [0]

Hail! Мастера, будьте любезны, помогите с сабжем.
Часть уже сделал: перекрыл WM_NCPAINT. НО! кнопки минимайз-максимайз-закрытие при пролете мыши все равно перерисовываются по-виндовски, на синем прямоугольничке (это, кстати, не тулбар случайно?).
Я так полагаю, нужно перекрывать WM_NCHITTEST, открывая inherited только если координаты не в прямоугольнике системных кнопок.

Только умоляю не отсылать меня на поиск: честное персидское, 2 (два) дня подряд искал, ниче полезного.

Да, ещё, может я зря корячусь... Кто-нить знает пример перерисовки заголовка (и рамки, но это проще) формы в Win98 под WinXP (я щас моделирую Silver) ??


 
MJH ©   (2002-08-18 01:22) [1]

у меня нефига не перерисовываются минимайзы...
может это от того, что перекрываю wm_ncКРЫСА_КЛИКИ ?
а рамку - GetSystemInfo() с соответсвующими флагами, выщитываешь прямоугольник, и StretchBlt() в него


 
Poirot ©   (2002-08-18 08:21) [2]

Господа!!!
Все компоненты, которые рисовани Каптион, и которые я изучал - не рисовали кнопки...
Единственное что можно предложить это самому на bsNone что-торисовать...
Сообщения знаем, Размеры каптиона с бордерами знаем, размер кнопок - знаем, рисунки кнопок в нажатом/отжатом виде тоже можем получить... что-ж нам мешает!!
ЗЫ: Клиентскую область тоже помоему можем изменить... ну вот и всё!!!!


 
Юрий Зотов ©   (2002-08-18 22:26) [3]

Система отрисовывает заголовок окна вызовом DrawCaption. Кнопки в область заголовка не входят, они рисуются отдельно, вызовом DrawFrameControl. Если выставить bsNone, то по NCPAINT можно самому вызывать эти функции и рисовать что угодно. Но при bsNone придется, конечно, самому эмулировать SYSCOMMAND.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.009 c
1-7979
Shadow
2002-09-19 20:52
2002.10.03
Handle


1-8015
SONY
2002-09-21 16:20
2002.10.03
Как загрузить и отмасштабировать JPEGImage в TImage


3-7823
Serg2002
2002-09-12 10:30
2002.10.03
Супер сложный запрос :)


1-7911
Metotrone
2002-09-23 16:40
2002.10.03
Положение курсора в Memo1


7-8192
sergant33
2002-07-26 15:54
2002.10.03
Как запускать прогу?




   Наверх