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

Изменить вид системных кнопок (Maximize, Minimize...)   Найти похожие ветки 

 
debater   (2004-05-14 20:24) [0]

Подскажите, пожалуйста, как можно изменить вид системных кнопок, то есть чтобы там рисунок другой был.


 
GuAV   (2004-05-14 21:31) [1]

Убери стандартные и рисуй свои.
Рисовать в заголовке можно, но затруднительно,
проще нарисовать новый заголовок целиком, а страрый убрать
(стили окна).
Признак кнопок (Maximize, Minimize...) -
своеобразная реакция на WM_NCHITTEST, которую
прийдеться организовать для своих кнопок.


 
debater   (2004-05-14 22:23) [2]

а проше нельзя? например, как-нибудь перерисовать стандартные


 
Игорь Шевченко ©   (2004-05-14 22:36) [3]


> а проше нельзя? например, как-нибудь перерисовать стандартные


WM_NCPAINT, WM_NCACTIVATE, WM_NCxBUTTONxxxx, WM_NCHITTEST надо обрабатывать.

Тебе это кажется проще ?

в [1] дали очень неплохой совет, к тому же свой заголовок неплохо выводится функцией DrawCaption


 
Игорь Шевченко ©   (2004-05-14 22:37) [4]

...А сами кнопки удачно рисуются функцией DrawFrameControl (стандартные)


 
debater   (2004-05-14 22:51) [5]

>WM_NCPAINT, WM_NCACTIVATE, WM_NCxBUTTONxxxx, WM_NCHITTEST надо обрабатывать.

Я хотел всего лишь узнать можно ли как-то заменить используемые для стандартных кнопок изображения на другие. Если можно, то я не понимаю как образом возникает необходимость в обработке сообщений. Если нельзя, то как убирается заголовок окна?


 
Игорь Шевченко ©   (2004-05-14 23:02) [6]


> Я хотел всего лишь узнать можно ли как-то заменить используемые
> для стандартных кнопок изображения на другие.


Стандартные изображения рисует система, обрабатывая эти сообщения. Заменить их в системе нельзя. Значит, надо рисовать кнопки самому, обрабатывая эти сообщения. Это гораздо более трудоемко, чем способ, предложенный в [1]


 
GuAV   (2004-05-14 23:10) [7]


>как убирается заголовок окна?

...а страрый убрать (стили окна)... - точнее, стиль WS_CAPTION

>не понимаю как образом возникает необходимость в обработке сообщений?


А как рисовать, не обрабатывая сообщений ???


 
GuAV   (2004-05-14 23:34) [8]

>WM_NCPAINT, WM_NCACTIVATE, WM_NCxBUTTONxxxx, WM_NCHITTEST надо обрабатывать.

IMHO, без WM_NCxBUTTONxxxx можно обойтись.
Без WM_NCHITTEST тоже, если уверен, что положение/размер твоих и родных совпадают. Но все равно это трудоемко


 
Игорь Шевченко ©   (2004-05-15 00:03) [9]

GuAV   (14.05.04 23:34)


> IMHO, без WM_NCxBUTTONxxxx можно обойтись.


А как рисовать их нажатое/ненажатое состояние ?


 
GuAV   (2004-05-15 00:43) [10]


> А как рисовать их нажатое/ненажатое состояние ?


Пардон, ошибся.



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

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



Память: 0.47 MB
Время: 0.019 c
3-1085749710
Andrey
2004-05-28 17:08
2004.06.20
Использование cdx в Delphi


1-1086706407
red chief
2004-06-08 18:53
2004.06.20
Как поменять стиль шрифта?


1-1086703741
BlackLord2003
2004-06-08 18:09
2004.06.20
ClipText


3-1085492325
Князев Сергей
2004-05-25 17:38
2004.06.20
FireBird 1.03.972 подключение и просмотр базы


3-1085499788
GanibalLector
2004-05-25 19:43
2004.06.20
дата в IB




   Наверх