![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
mouse [D6]
ed © (2003-01-09 13:26:00)Мастера бросте, если можете, пример как узнать пробег мыши за текущий сеанс работы компьютера.
ed (2003-01-10 13:22:00) [1]Diamond Cat, Если можете вышлите пожалуйсто пример на nokk9@mail.ru.
С уважением. Эд.
Diamond Cat (2003-01-10 00:59:00) [2]Могу выслать пример с использованием перехвата сообщений от мыши,
пользоваться таймером не советую, Ketmar прав
Diamond_cat@newmail.ru
Ketmar (2003-01-09 18:09:00) [3]вообще-то хук писать надо.
а TTimer.Interval, кстати, делай-не делай, а меньше 50ms фиг будет. да и тормозит оно.
Satanas Nobiscum! 09-Jan-XXXVIII A.S.
ed (2003-01-09 17:14:00) [4]Axis_of_Evil, спасибо!!!
Axis_of_Evil (2003-01-09 16:45:00) [5]Самоучка ... я тоже.
Делаешь в программе TTimer (компонент), его Interval := где-то 1;
Глобальные переменные:
OldX, OldY: Integer;
Path: Cardinal; // обнули в начале
procedure TForm1.Timer1Timer(Sender: TObject);
//короче процедура таймера
begin
Path := Path + Sqrt(Sqr((Mouse.CursorPos.X - OldX)) +
Sqr((Mouse.CursorPos.Y - OldY)) );
OldX := Mouse.CursorPos.X;
OldY := Mouse.CursorPos.Y;
end;
Чего пояснить?
ed (2003-01-09 16:31:00) [6]Axis_of_Evil, спасибо. Но я пока только учусь программировать, причём я самоучка. Если можно расширирь свой ответ.
Поподробнее пожалуйсто. С уважением. Эд.
Axis_of_Evil (2003-01-09 13:41:00) [7]ловить WM_MouseMove
и считать
Path := Path + Sqrt(
(Mouse.CursorPos.X - OldX)^2 +
(Mouse.CursorPos.Y - OldY)^2
);
OldX := Mouse.CursorPos.X;
OldY := Mouse.CursorPos.Y;
или по таймеру
Игорь Шевченко (2003-01-09 13:35:00) [8]Скачать в инете программу MouseOdometer