模拟从 X,Y 到 X,Y 的光标运动
simulate cursor motion from X,Y to X,Y
我需要通过可见光标移动将鼠标光标从坐标 (800,300) 移动到 (100,600)。
我怎样才能做到这一点? (我只需要模拟运动 - 我正在使用 autopy 模块获取鼠标位置)
直接来自 docs:
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)
我需要通过可见光标移动将鼠标光标从坐标 (800,300) 移动到 (100,600)。 我怎样才能做到这一点? (我只需要模拟运动 - 我正在使用 autopy 模块获取鼠标位置)
直接来自 docs:
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)