2

我需要通过可见的光标移动将鼠标光标从坐标 (800,300) 移动到 (100,600)。我怎样才能做到这一点?(我只需要模拟运动 - 我正在使用autopy模块获取鼠标位置)

4

1 回答 1

3

直接来自文档

import autopy

autopy.mouse.move(800, 300)
autopy.mouse.smooth_move(100, 600)

这首先移动到该位置,然后将鼠标线性滑动到第二个位置。结合停顿,您可以根据autopy.mouse.move需要快速或缓慢地移动。

按要求编辑:为了更好地控制smooth_move您可以自己设置鼠标位置。在这里,我将 total_time 设置为5.00秒,但您可以将其更改为尽可能快。

from __future__ import division
import autopy
import time

x0, y0 = 800, 300
xf, yf = 100, 600

total_time = 5.00  # in seconds
draw_steps = 1000  # total times to update cursor

dx = (xf-x0)/draw_steps
dy = (yf-y0)/draw_steps
dt = total_time/draw_steps

for n in xrange(draw_steps):
    x = int(x0+dx*n)
    y = int(y0+dy*n)
    autopy.mouse.move(x,y)
    time.sleep(dt)
于 2015-01-17T22:39:31.750 回答