Форум программистов, компьютерный форум CyberForum.ru

Инверсия мыши - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.80
Tums37
0 / 0 / 0
Регистрация: 21.11.2011
Сообщений: 22
15.02.2012, 16:57     Инверсия мыши #1
Хочу написать программу на С++ для инверсии мыши.
скажите как контролировать не координаты курсора на экране а именно перемещение самой мыши (той что рядом с клавой лежит)
Тоесть если сама мышь (а не курсор) движется вниз то например курсор движется вверх??
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.02.2012, 16:57     Инверсия мыши
Посмотрите здесь:

C++ инверсия
C++ двумерный масив инверсия спирали
C++ Инверсия
C++ Инверсия в массиве
Инверсия строк C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
easybudda
15.02.2012, 17:02
  #2

Не по теме:

Цитата Сообщение от Tums37 Посмотреть сообщение
Тоесть если сама мышь (а не курсор) движется вниз то например курсор движется вверх?
Самый простой способ - монитор вверх ногами перевернуть...

AzaKendler
 Аватар для AzaKendler
214 / 116 / 9
Регистрация: 30.05.2011
Сообщений: 1,772
15.02.2012, 17:11     Инверсия мыши #3
Tums37, спроси в разделе win api

думаю все таки обрабатывать сообщение WM_MOUSEMOVE, в обработчике ловить текущую позицию курсора и инвертировать. затем сразу выставлять новую позицию

или мож хук
Tums37
0 / 0 / 0
Регистрация: 21.11.2011
Сообщений: 22
15.02.2012, 17:17  [ТС]     Инверсия мыши #4
Цитата Сообщение от AzaKendler Посмотреть сообщение
спроси в разделе win api
ок спс спрошу.

Добавлено через 1 минуту
Никак уж не думал что такая простая хрень как инверсия делается так сложно...
Lady_In_Dreams
 Аватар для Lady_In_Dreams
1 / 1 / 0
Регистрация: 15.02.2012
Сообщений: 16
15.02.2012, 17:25     Инверсия мыши #5
Вот пример в паскале
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
var
...
  OldPoint: TPoint;
...
procedure TForm1.FormCreate(Sender: TObject);
begin
  GetCursorPos (OldPoint);
  Timer1.Interval := 1;
  Timer1.Enabled := True;
end;
 
procedure TForm1.Timer2Timer(Sender: TObject);
var
  p: TPoint;
begin
  GetCursorPos (p);
  OldPoint.X := OldPoint.X - (p.X - OldPoint.X);
  OldPoint.Y := OldPoint.Y - (p.Y - OldPoint.Y);
  if OldPoint.X < 0 then OldPoint.X := OldPoint.X + Screen.Width ;
  if OldPoint.Y < 0 then OldPoint.Y := OldPoint.Y + Screen.Height;
  if OldPoint.X > Screen.Width  then OldPoint.X := OldPoint.X - Screen.Width ;
  if OldPoint.Y > Screen.Height then OldPoint.Y := OldPoint.Y - Screen.Height;
  SetCursorPos (OldPoint.X, OldPoint.Y);
end;
Tums37
0 / 0 / 0
Регистрация: 21.11.2011
Сообщений: 22
15.02.2012, 17:33  [ТС]     Инверсия мыши #6
Спс попробую перепишу...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.05.2012, 05:38     Инверсия мыши
Еще ссылки по теме:

Инверсия C++
C++ Инверсия в массиве
C++ Инверсия нужно исправить ошибку

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Scriptc
Сообщений: n/a
28.05.2012, 05:38     Инверсия мыши #7
какие 2 строчки зарисовали в проге?
Yandex
Объявления
28.05.2012, 05:38     Инверсия мыши
Ответ Создать тему
Опции темы

Текущее время: 18:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru