|
马上加入TC
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
帮忙看下哦这样该行吗完美按键码:思路:两点之间直线上取10个坐标,每个坐标加随机数偏移
Sub 鼠标轨迹()//x1,y1终点
GetCursorPos x0, y0 //当前坐标
m = abs(x1 - x0) //终点x到当前x坐标的绝对值m
n = abs(y1 - y0) //终点y到当前y坐标的绝对值n
d = sqr(m ^ 2 + n ^ 2) //两点之间距离d
cs = int(d / 10) //d分10步
x2 = int((x1 - x0) / cs) //x每次移动的距离
y2 = int((y1 - y0) / cs) //y每次移动的距离
s = 0
For i1 = 0 To int(d) Step 10 //距离d分十步
If x3 = "" and y3 = "" Then //如果为空
x3 = x0 //给赋值当前坐标
y3 = y0
Else
x3 = x3 & "|" & (x0 + x2 * s) //得到十步的坐标
y3 = y3 & "|" & (y0 + y2 * s)
End If
s = s + 1
Next
x = split(x3, "|") //数组,每步的坐标
y = split(y3, "|")
For j1 = 0 To UBound(x)
MoveTo x(j1) + shuijix(), y(j1) + shuijiy() //每步坐标个加上随机数
Delay 1
Next
MoveTo x1 + shuijix(), y1 + shuijiy() //移到终点
End Sub
自改改TC:
功能 鼠标轨迹(x1,y1)
变量 x0,y0,x3,y3,c1,x,y,返回串,x=数组[0],y=数组[0],ydx,ydy
鼠标.获取坐标(x0,y0)
m=数学.绝对值(x1-x0)
n=数学.绝对值(y1-y0)
d=数学.开方(m*m + n*n)
cs=类型.取整(d/10)
x2=类型.取整((x1-x0)/cs)
y2=类型.取整((y1-y0)/cs)
s=0
for(i1=0;i1<d;i1=i1+d/10 )
if(x3==""&&y3=="")
x3=x0
y3=y0
else
x3=x3&"|"&(x0+x2*s)
y3=y3&"|"&(y0+y2*s)
endif
s=s+1
endfor
str.split(x3,"|",x)
str.split(y3,"|",y)
arraysp.size(x,c1)
for (j1=0;j1<c1;j1++)
ydx=类型.转整型(x[j1])+辅助.随机数(1,5)
ydy=类型.转整型(y[j1])+辅助.随机数(1,5)
鼠标.移动(ydx,ydy)
辅助.等待(5)
endfor
鼠标.移动(x1,y1)
运行效果不一样,哪里不对请帮吗改一下
难道TC强到都不用鼠标轨迹?
或者还是有什么更强大的?
|
|