怎么用按键精灵实现鼠标拖动

简单的鼠标拖动屏幕地图都不会哎~~谁帮我看下
左键按下移动到另一点左键弹起
我这样写怎么实现不了
Delay 1000
MoveTo 1111,897
LeftDown 1
Delay 1000
MoveTo 783,897
LeftUp 1

Dim pinx
pinx = Plugin.Sys.GetScRX()
Call 平滑移动鼠标to(pinx, 0, 5000, 0, 0,10)
//这里展示了鼠标 历时5秒 从屏幕左上角移动到屏幕右上角的例子,下面是参数说明
//参数:平滑灵敏度说明:整形,范围1~其实坐标差最大值,鼠标单次跨越的距离。
//移动总时间越长或起始坐标距离越短,平滑灵敏度越小越好
//反之,越大越准确,但一般不超过起始坐标最大差值的10%
//设置灵敏度是为了调节delay函数延时太短时,无法准确执行延时
Function 平滑移动鼠标to(终点坐标px,终点坐标py,移动时间,起点坐标beginx,起点坐标beginy,平滑灵敏度)
dim mx
dim x,y
dim tx,ty
x=起点坐标beginx
y=起点坐标beginy
tx=abs(x-终点坐标px)
ty=abs(y-终点坐标py)
if tx>=ty
mx=tx
else
mx=ty
end if
if mx>0
for i = 0 to mx step 平滑灵敏度
sx=int((终点坐标px*i+x*(mx-i))/mx)
sy=int((终点坐标py*i+y*(mx-i))/mx)
moveto sx,sy
delay int(移动时间/mx*平滑灵敏度)
Next
else
delay 移动时间
end if
MoveTo 终点坐标px, 终点坐标py
平滑移动鼠标to=true
End Function
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-10-07
代码完全没问题

没效果可能是游戏限制了
可以尝试一下
Delay 1000
MoveTo 1111,897
Delay 100
LeftDown 1
Delay 100
MoveTo 783,897
Delay 100
LeftUp 1本回答被提问者和网友采纳
第2个回答  2022-05-06
Function TuoDong(ii_x,ii_y,ii_x1,ii_y1)
'按键精灵实现拖拽鼠标功能,从(ii_x,ii_y)拖动到(ii_x1,ii_y1)
'不可以使用MoveTo指令,必须用MoveR相对移动功能,一个像素一个像素地拖动。
moveto ii_x,ii_y
delay 100
leftDown 1
delay 50
abs_x=abs(ii_x1-ii_x)
abs_y=abs(ii_y1-ii_y)

if ii_x1>ii_x then
deita_x= 1
else
deita_x= -1
endif
if ii_y1>ii_y then
deita_y= 1
else
deita_y= -1
endif
for i=0 to abs(ii_x1-ii_x)
MoveR deita_x,0
next
for i=0 to abs(ii_y1-ii_y)
MoveR 0,deita_y
next
delay 50
leftUP 1
End Function

Sub mmm()
TuoDong 100,100,300,300
End Sub
Event Form1.Button1.Click
Delay 3000
Call mmm
End Event
第3个回答  2019-08-13
x = 1111
y = 897
MoveTo x, y
Delay 200
LeftDown 1
Delay 50
For i = 1 To 328
x=x-1
MoveTo x,y
Next
LeftUp 1
相似回答