Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.09.22;
Скачать: CL | DM;

Вниз

Мышь   Найти похожие ветки 

 
artemkin ©   (2003-07-17 19:10) [0]

Как узнать, нажималась ли правая кнопка мышы, а если нажималась, то двигалась ли она (при нажатой правой кнопке мыши)?


 
artemkin ©   (2003-07-17 19:47) [1]

я имею в виду, что : перехватить сообщение WM_RButton Down() я могу, а вот как узнать двигалась ли мышь во время клика?


 
ZZ ©   (2003-07-17 20:53) [2]

Ну перехватывай еще что-нибудь (подсказать что или сам найдешь??)... или координаты сравинвай.


 
Asteroid ©   (2003-07-18 04:46) [3]

Поправка: во время клила ничего больше не происходит. Нужно отловить WM_RBUTTONDOWN, поставить свой флаг, а затем отлавливать перемещения - ибо они идут другим сообщением.


 
Igit ©   (2003-07-18 08:26) [4]

2artemkin
Если разберешься, напиши пример сюда...


 
Song ©   (2003-07-19 11:20) [5]

WM_MOUSEMOVE+GetAsyncKeyState()


 
artemkin ©   (2003-07-20 09:32) [6]

Я понял так : Ловим WM_RMOUSEDOWN, потом, пока не пришло WM_RMOUSEUP хватаем WM_MOUSEMOVE, но конечно же над реализацией еще подумаю.

Но вот еще вопрос : как потом, если вдруг мыша двигалась, отменить все запрограммированные действия? и не отменять, если движения небыло ?

2 Song : что делает GetAsyncKeyState() ?


 
Marser ©   (2003-07-20 11:45) [7]


> artemkin ©


> 2 Song : что делает GetAsyncKeyState() ?

Определяет состояние виртуальной клавиши.
GetAsyncKeyState(MK_RBUTTON) - возвращает целое с установленным старшим байтом(тут - словом), если была нажата виртуальная клавиша(в данном случае - правая кнопка мыши), то есть можно сделать примерно вот так
procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
var i:integer;
begin
i:=GetAsyncKeyState(MK_RBUTTON);
if hi(i)>0 then showmessage("При движении мыши нажата её правая кнока");
end;


 
Asteroid ©   (2003-07-20 15:50) [8]

> Marser © (20.07.03 11:45)
Может быть все-таки VK_RBUTTON?


 
Song ©   (2003-07-20 17:29) [9]

Нет, MK


 
Marser ©   (2003-07-20 21:43) [10]


> Asteroid © (20.07.03 15:50)
> > Marser © (20.07.03 11:45)
> Может быть все-таки VK_RBUTTON?

VK_ относятся к клавиатуре, MK_ - к мыши.



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

Текущий архив: 2003.09.22;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.036 c
1-71627
Berezne
2003-09-09 12:34
2003.09.22
Что означает ета ошибка???


3-71484
rosl
2003-09-02 04:38
2003.09.22
сортировка Query


1-71670
parek
2003-09-11 14:02
2003.09.22
PDF: create, edit, store


3-71532
Relaxxx
2003-08-29 10:30
2003.09.22
Footer у DBGridEh


7-71970
bloodman
2003-07-08 21:23
2003.09.22
HOOk & DLL