![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
координаты курсора
KACHAN © (2011-07-20 16:54:00)у меня следующая проблема : wm_mousemove возвращает координаты курсора уже после того как он переместился в эти координаты. как узнать координаты в которые собирается переместиться курсор при движении мыши?
Cobalt (2011-08-03 17:49:00) [1]> KACHAN ©
3D-игрушку пишешь?
KACHAN (2011-08-03 11:12:00) [2]Спасибо, Павел.
P.S. Хоть кто то адекватный нашелся
И. Павел (2011-07-23 09:00:00) [3]KACHAN © (20.07.11 16:54)
Можно решить задачу искусственным способом: как только мышь достигает левой границы, сдвигаете ее вправо на 1 пиксел. Если мышь опять достигает левой границы - значит пользователь продолжает двигать мышь влево. Выполняете необходимые действия и опять перемещаете мышь вправо на 1 пиксел.
Palladin (2011-07-23 02:11:00) [4]ну просто если мышь не двигать, а тащить, то по всем законам качана мышь не двигается, а тащится.... собпсно mousemove не имеет права возбуждаться...
Германн (2011-07-23 00:34:00) [5]
> KACHAN © (22.07.11 11:56) [6]
>
> .....блин, хук поставьте, и посмотрите что происходит есть
> просто подвести мышь допустим к левой границе монитора,
> и что будет если тащить ее влево не меняя координаты Y.
>
А ты сначала научи нас. Как подвести курсор мыши точнок границе! Не на пиксель меньше, не на пиксель больше. То что курсор мыши не перейдёт границу - это и так ясно.
Сергей М. (2011-07-23 00:02:00) [6]
> KACHAN © (22.07.11 11:56) [6]
Да ты и вправду "качан")
То у тебя
> если мышь не двигать
то теперь видите-ли
> если тащить
Ты уж как-нить определись уже - двигаешь ты ее или не двигаешь, тащишь или не тащишь)
Семь пятниц на неделе))
KACHAN (2011-07-22 11:56:00) [7].....блин, хук поставьте, и посмотрите что происходит есть просто подвести мышь допустим к левой границе монитора, и что будет если тащить ее влево не меняя координаты Y.
Anatoly Podgoretsky (2011-07-22 09:46:00) [8]> Сергей М. (21.07.2011 20:43:04) [4]
У него особая мышь, которая работает без движения, ну по крайней мере ему
так кажется.
Сергей М. (2011-07-21 20:43:00) [9]
> если мышь не двигать, то mousemove прилетает
Это с какого же перепугу ?
KACHAN (2011-07-20 17:28:00) [10]допустим курсор находится на левой границе монитора, необходимо определить - пытается ли пользователь не меняя координату Y тащить курсор влево или же курсор никто не тащит. визуально это выглядит одинаково.единственная разница в частоте сообщений wm_mousemove. если мышь не двигать, то mousemove прилетает периодически с одними и теми же координатами, есть пытаться тащить мышь влево, не изменяя Y, то сообщение летит чаще. получается, что координаты мыши не изменяются, но система узнает о том что мышь пытаются передвинуть. вот мне и надо узнать- как она это определяет. есть вариант установить таймер и замерять сколько раз прилетел move, но это какой то изврат, думаю должен быть более удобный способ
Юрий Зотов (2011-07-20 17:16:00) [11]Как узнать, куда я собираюсь идти, если я еще стою на месте? Никак.
Движение мыши - это и есть изменение координат курсора. Если они еще не изменились, значит мышь еще стоит и узнать, куда ее собираются двинуть невозможно. А если мышь двинулась - значит координаты курсора УЖЕ изменились.
Поэтому Вы придумали задачу, у которой нет решения. Но очень похоже, что исходная Ваша задача совсем другая. И если Вы расскажете ИСХОДНУЮ задачу, то очень может быть, что ее решение будет найдено.
MBo (2011-07-20 17:15:00) [12]>как узнать координаты в которые собирается переместиться курсор при движении мыши? Наверное, потребуется читать мысли юзера и предсказывать мелкую моторику рук?