Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Delphi Новый топик    Ответить
 определить направление мыши по X  [new]
Tech N9ne
Member

Откуда:
Сообщений: 113
помогите пожалуйста, не могу сообразить, как определить направление движения мыши по X.
Y не нужен.
я вожу мышку влево-право... на каждую сторону должно происходить своё действие.
всё это в таймере, так как программа будет свёрнута, работа будет в другом окне
я определяю центр X, деля на 2 Screen.width
потом условие, если больше центра, то мышь двинули вправо, если меньше - влево.

Но как мне определять движения, НЕ относительно центра?
нужно сохранять предыдущие координаты мыши и сравнивать их с новыми, верно?
тут то я и запутался...
Помогите пж)
4 дек 18, 13:00    [21752813]     Ответить | Цитировать Сообщить модератору
 Re: определить направление мыши по X  [new]
rgreat
Member

Откуда:
Сообщений: 4584
Tech N9ne
нужно сохранять предыдущие координаты мыши и сравнивать их с новыми, верно?
Верно.
4 дек 18, 14:16    [21752926]     Ответить | Цитировать Сообщить модератору
 Re: определить направление мыши по X  [new]
Tech N9ne
Member

Откуда:
Сообщений: 113
rgreat
Tech N9ne
нужно сохранять предыдущие координаты мыши и сравнивать их с новыми, верно?
Верно.

Я не могу построить логическую цепочку, как это всё должно работать.
Как сохранять именно предыдущие координаты, и сравнивать с настоящими.
если X1 := Mouse.CursorPos.X
то они постоянно ведь будут равняться друг другу.
5 дек 18, 01:21    [21753845]     Ответить | Цитировать Сообщить модератору
 Re: определить направление мыши по X  [new]
DimaBr
Member

Откуда:
Сообщений: 10781
var X: integer;
procedure OnTimer(Sender: TObject);
var P: TPoint;
begin
  P := GetCursorPos;
  if X < P.X then begin
    // мышка сдвинулась вправо
  end else
  if X > P.X then begin
    // мышка сдвинулась влево
  end;

  X := P.X;
end;
5 дек 18, 01:31    [21753848]     Ответить | Цитировать Сообщить модератору
 Re: определить направление мыши по X  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 46374

Tech N9ne
Как сохранять именно предыдущие координаты, и сравнивать с настоящими.
если X1 := Mouse.CursorPos.X
то они постоянно ведь будут равняться друг другу.

А ты сравнивай до сохранения.

Posted via ActualForum NNTP Server 1.5

5 дек 18, 14:28    [21754403]     Ответить | Цитировать Сообщить модератору
 Re: определить направление мыши по X  [new]
Tech N9ne
Member

Откуда:
Сообщений: 113
Dimitry Sibiryakov
Tech N9ne
Как сохранять именно предыдущие координаты, и сравнивать с настоящими.
если X1 := Mouse.CursorPos.X
то они постоянно ведь будут равняться друг другу.

А ты сравнивай до сохранения.

Догнал))

а реально ли сделать хук, на определение направления движения мыши?
6 дек 18, 00:09    [21755161]     Ответить | Цитировать Сообщить модератору
Все форумы / Delphi Ответить