Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Клейкие окна Добавлено: 02.05.10 16:54  

Автор вопроса:  Winand | Web-сайт: winandfx.narod.ru
Всем известное поведение, когда окна клеются к краям экрана. Мне нравится, но вот не знаю как это сделать при перетаскивании окна за заголовок. Отлавливая сообщение WM_MOVING можно приклеивать окно к краю, если оно достаточно близко. Но как организовать отрыв от края? В обычном случае берут точку клика мышкой и от нее считают на сколько пикселей оттянули курсор.
Возможно ли подобное с заголовком?

И кстати, можно ли узнать влезает надпись заголовка полностью или есть многоточие на конце?

Ответить

  Ответы Всего ответов: 2  

Номер ответа: 1
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #1 Добавлено: 02.05.10 21:59
Первая задача несложно решается установкой глобального хука на мышку.

Вторая - берешь ширину блока, в котором находится заголовок, через GetTextExtentPoint32 считашеь длину текста и смотришь, вмещается или нет.

Ответить

Номер ответа: 2
Автор ответа:
 Winand



Вопросов: 87
Ответов: 2795
 Web-сайт: winandfx.narod.ru
 Профиль | | #2
Добавлено: 04.05.10 01:36
О! Совершенно случайно, скачав пример сабклассинга через SetWindowSubclass увидел там же готовую первую задачу. Сейчас бум изучать, как оно работает)
http://vb.mvps.org/samples/HookXP/

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам