Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Аватара для Johny777

Ветеран


Сообщения: 649
Благодарности: 444

Профиль | Отправить PM | Цитировать


Цитата El Sanchez:
так пойдет? »
El Sanchez, Не, не то
нужно скрыть неактивную сис. кнопку "развернуть" на форме и оставит только "свернуть" и "закрыть", причём чтоб они лежали рядом друг с другом без пробела
тк юзаю скин придумал извартский, но на удивление рабочий способ ( описание-( http://forum.oszone.net/post-2080773-1638.html ), реализация-( http://forum.oszone.net/post-2081356-1640.html ) ), но обломился (описание почему по первой ссылке).
Откровено говоря не знаю что пихать в библиотеку, чтоб скрыть тултипы, тк кода на 10 строк, но кажись мой порт не работает из-за замены функций GetMem(...), FreeMem(...)
И вот недавно нарвался на функцию DrawFrameControl которая может многое, включая добавление своих кнопок в заголовок формы и (внимание) стандартных - системных.
Тут же нашёлся пример по добавлении своей кнопки (исходник прикреплен в пред. сообщении), но с флагом-константой DFCS_CAPTIONMIN = 1; можно добавить по координатам
прямоугольника (TRect) стандртную кнопку "свернуть" аккурат слева от единственной кнопки "закрыть" (она одна при BorderStyle := bsDialog), но как известно из 10 раз я облaмываюсь на таких попытках 9,5 раз и это как раз тот случай.


sergey3695,
то же самое лежит здесь http://forum.vingrad.ru/forum/topic-...-system/0.html
видел уже! проблема в другом. Даже если скрыть или заменить тултип, то остаётся ст. сис. меню, вызываемое кликом правой кнопкой мыши по заголовку и левым кликом по иконке (по той, что в левом верхнем углу). А там айтем развернуть который сворчивает окно (те ещё хуже тултипа). Да его можно удалить, но тогда окну не будут посылаться сообщения "развернуть", которые мы меняем на "свернуть". Кажись фиг бы с ним, ведь у нас есть WM_NCLBUTTONDOWN с wParam = HTMAXBUTTON - нажатие на кнопку развернуть, но нажатие <> клик! Можно отловить правый клик по заголовку и обнулить сообщение WM_NCRBUTTONDOWN, но остаётся левый клик по иконке и появится снова сис. контекстное меню. Тут думаю нужно определять положение мыши (TPoint) и сравнивать с TRect-ом формы (х, у) и выполнять что-то вроде ( http://forum.oszone.net/post-2081583-1646.html )

В общем пока-что самый привлекательный способ - добавить свою кнопку

Отправлено: 03:28, 08-02-2013 | #1627