按键精灵怎么让鼠标循环点击两个坐标各自范围的随机坐标?
Randomizex1=Array("1250","1200")//x坐标上下限y1=Array("500","400")//y坐标上下限d1=Array("210","...
Randomize
x1=Array("1250","1200")//x坐标上下限
y1=Array("500","400")//y坐标上下限
d1 = Array("210", "110")//延时上下限
Do
x = int((x1(0) - x1(1) + 1) * rnd + x1(1))
y = int((y1(0) - y1(1) + 1) * rnd + y1(1))
d = int((d1(0) - d1(1) + 1) * rnd + d1(1))
TracePrint "x坐标为" & x & ",y坐标为" & y & ",延时为" & d & "毫秒"
MoveTo x, y
LeftClick 1
Delay 1
Loop
这个代码只是一个坐标范围内随机如何弄到两个坐标范围内随机点击?小白不懂就问. 展开
x1=Array("1250","1200")//x坐标上下限
y1=Array("500","400")//y坐标上下限
d1 = Array("210", "110")//延时上下限
Do
x = int((x1(0) - x1(1) + 1) * rnd + x1(1))
y = int((y1(0) - y1(1) + 1) * rnd + y1(1))
d = int((d1(0) - d1(1) + 1) * rnd + d1(1))
TracePrint "x坐标为" & x & ",y坐标为" & y & ",延时为" & d & "毫秒"
MoveTo x, y
LeftClick 1
Delay 1
Loop
这个代码只是一个坐标范围内随机如何弄到两个坐标范围内随机点击?小白不懂就问. 展开
1个回答
展开全部
你要的就是目标点偏移点击吧?
Dim 偏移量偏, 移延迟
偏移量 = 20'表示对目标坐标点有正负20的偏移
偏移延迟 = 300'表示在0-300毫秒之间取随机
Do
Y = 200 : X = 300 '第一个坐标
Call 偏移(X, Y)
Y = 500 : X = 600 '第二个坐标
Call 偏移(X, Y)
//如果还要添加坐标就像上面一样
Loop
Sub 偏移(X, Y)
Dim X偏移, Y偏移, 延迟
Randomize
X偏移 = Int((偏移量 * 2 + 1) * rnd - 偏移量)
Y偏移 = Int((偏移量 * 2 + 1) * rnd - 偏移量)
延迟 = int(偏移延迟 + 1) * rnd
MoveTo X + X偏移, Y + Y偏移
Delay 延迟
LeftClick 1
End Sub
Dim 偏移量偏, 移延迟
偏移量 = 20'表示对目标坐标点有正负20的偏移
偏移延迟 = 300'表示在0-300毫秒之间取随机
Do
Y = 200 : X = 300 '第一个坐标
Call 偏移(X, Y)
Y = 500 : X = 600 '第二个坐标
Call 偏移(X, Y)
//如果还要添加坐标就像上面一样
Loop
Sub 偏移(X, Y)
Dim X偏移, Y偏移, 延迟
Randomize
X偏移 = Int((偏移量 * 2 + 1) * rnd - 偏移量)
Y偏移 = Int((偏移量 * 2 + 1) * rnd - 偏移量)
延迟 = int(偏移延迟 + 1) * rnd
MoveTo X + X偏移, Y + Y偏移
Delay 延迟
LeftClick 1
End Sub
更多追问追答
追问
可以大佬,但是我试了一下,有什么办法可以让鼠标有轨迹的移动吗,这样的话鼠标是在两点之有轨迹而不是闪现的移动
追答
这个轨迹我们以前做过函数
Sub 显示鼠标轨迹(终点坐标X, 终点坐标Y)
Dim i, 步长, 鼠标偏移值, 间隔延迟, Cx, Cy, n, x2, y2, x3, y3
步长 = 2 '每个移动轨迹间的距离(取值:正整数).取值越大轨迹越不明显,速度越快
鼠标偏移值 = 5 '对目标坐标X和Y的±偏移量
间隔延迟 = 2 '每个移动轨迹间的延迟(毫秒)
GetCursorPos xy起点坐标X, xy起点坐标Y '这个是按键精灵的鼠标起始点的坐标,与大漠的两者取一
//dm.GetCursorPos xy起点坐标X, xy起点坐标Y '这个是大漠的鼠标起始点的坐标,与按键精灵的两者取一
'注意,大漠的获取当前鼠标位置是变参,在内部已经定义,外部无法定义.
'从而导致变量名冲突,所以变量名要复杂点
Randomize
'//鼠标偏移值,取5表示±5
终点坐标X = 终点坐标X + (round((鼠标偏移值 * 2) * rnd - 鼠标偏移值))
终点坐标Y = 终点坐标Y + (round((鼠标偏移值 * 2) * rnd - 鼠标偏移值))
Cx = 终点坐标X - xy起点坐标X : Cy = 终点坐标Y - xy起点坐标Y '位移的总量
If Abs(Cx) > ABS(Cy) Then '设置位移总量大的作为要分割的小段数
n = Cint(Abs(Cx)/步长)
Else
n = Cint(Abs(Cy)/步长)
End If
i = 0
For n
i = i + 1
x2 = Cx / n * i : y2 = Cy / n * i '每小段数的坐标X,Y的增量
x3 = xy起点坐标X + Cint(x2) : y3 = xy起点坐标Y + Cint(y2)'得到第一小段的坐标
MoveTo x3, y3 '这个是按键精灵的鼠标移动,与大漠的两者取一
//dm.moveto x3, y3 '这个是大漠的鼠标移动,与按键精灵的两者取一
Delay 间隔延迟
Next
Delay round(10 * rnd + 5) '取值5-15的随机整数
MoveTo 终点坐标X, 终点坐标Y '这个是按键精灵的鼠标移动,与大漠的两者取一
//dm.moveto 终点坐标X, 终点坐标Y '这个是大漠的鼠标移动,与按键精灵的两者取一
If n = 0 Then
x3 = xy起点坐标X : y3 = xy起点坐标Y
End If
TracePrint "鼠标移动到了 X=" & x3 & " ,Y=" & y3 & " ,终点坐标X=" & 终点坐标X & " ,Y=" & 终点坐标Y
End Sub
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询