WWW.ИСХОДНИКИ.РУ cpp.sources.ru
java.sources.ru web.sources.ru soft.sources.ru
jdbc.sources.ru asp.sources.ru api.sources.ru

  Форум на исходниках
  Delphi
  Как ограничить движение мыши в форме при перетаскивании картинки

СПРОСИТЬ  ОТВЕТИТЬ
профайл | регистрация | faq

Автор Тема:   Как ограничить движение мыши в форме при перетаскивании картинки
whitebear опубликован 27-02-2001 19:30 MSK   Click Here to See the Profile for whitebear   Click Here to Email whitebear  
мне требуется при перетаскивании картинок
что бы мышь не выходила за края прямоугольника
как это реализовать ?
Lunya опубликован 28-02-2001 16:18 MSK     Click Here to See the Profile for Lunya  Click Here to Email Lunya     
What r u mean??:) Перетаскивание каких картинок и куда? Компонент TImage?
В любом случае можно пользоваться методом MouseMove формы для получения текущих координат укзателя и API функцией SetCursorPos(X:Integer,Y:Integer) для установки позиции указателя мыши.
Elephant опубликован 01-03-2001 02:02 MSK     Click Here to See the Profile for Elephant  Click Here to Email Elephant     
Предыдущий способ я называю "блуждающая мышь-эпилептик".
Все гораздо проще! Функция Win32 API ClipCursor! И ВСЕ!

2Lunya:

Вопрос: А что произойдет, если курсор уйдет с формы, где определен обработчик OnMouseMove?
Ответ: Сообщения от мыши перестанут поступать в форму!
Комментарий: Это основы программирования под Windows!!!

Lunya опубликован 06-03-2001 16:40 MSK     Click Here to See the Profile for Lunya  Click Here to Email Lunya     
2 Elephant:

Ну-с...замечание, конечно, уместно, но(!) ClipCursor ограничивает мышь одним прямоугольником, а что делать, если понадобится вновь "освободить" cursor? Тогда придется делать тот же самый ClipCursor, только на прямоугольник размером GetDesktopWindow, что не есть хорошо. Выбор способа здесь зависит от конкретной задачи, т.к. нам неизвестно:
a) Будет ли определен onMouseMove
b) Нужно ли "освобождать" мышь

СПРОСИТЬ  ОТВЕТИТЬ
Перейти:


E-mail | WWW.ИСХОДНИКИ.RU

Powered by: Ultimate Bulletin Board, Freeware Version 5.10a
Purchase our Licensed Version- which adds many more features!
© Infopop Corporation (formerly Madrona Park, Inc.), 1998 - 2000.