Имитация мыши слева внизу и справа внизу - PullRequest
0 голосов
/ 03 мая 2018

Я хочу смоделировать движение мыши, но не одним способом. Мне нужно, чтобы моя мышь переместилась в нижний левый угол, затем в правый нижний угол и, наконец, снова вернулась в нижний левый угол.

  1. внизу слева, 2 секунды
  2. внизу справа, 2 секунды
  3. снова слева внизу, 2 секунды

Но я не могу заставить это работать. Что мне нужно сделать? Это возможно?

Если мы не можем сделать все три; мы можем сделать сначала 2. то есть только внизу слева 2 секунды, затем внизу справа 2 секунды.

У меня есть это в ahk, но это только один путь, всегда идущий к левому низу. Мне это нужно в C++.

    #NoEnv
SendMode Input

~F6::Suspend
~End::ExitApp
~F5::Reload

LCtrl & ~LButton::
Loop
    If GetKeyState("LButton", "LCtrl") {
        Sleep, 3
        moveAmount := (moveAmount = 0.2) ? 3 : -1
        mouseXY(moveAmount,2)
    }
    else
    break

~LButton::
Loop
    If GetKeyState("LButton") {
        Sleep, 3
        moveAmount := (moveAmount = 0.2) ? 3 : -1
        mouseXY(moveAmount,2)
    }
    else
    break

Return



mouseXY(x,y)
{
DllCall("mouse_event",int,1,int,x,int,y,uint,0,uint,0)
}

1 Ответ

0 голосов
/ 03 мая 2018

Вы должны использовать GetAsyncKeyState, а не GetKeyState. GetKeyState возвращает значение, полученное при отправке последнего сообщения.

Кроме того, проверьте SendInput на MSDN. mouse_event давно устарел.

И, пожалуйста, добавьте тег 'winapi' к вашему вопросу.

...