TC官方合作论坛
标题:
第一份TC5.0的代码 模拟鼠标轨迹
[打印本页]
作者:
Gamestory
时间:
2015-2-13 02:05
标题:
第一份TC5.0的代码 模拟鼠标轨迹
代码和之前的变动有点大:
function MouseMove(Hwnd,x,y)//模拟轨迹
var Nowx,Nowy,Tox,Toy,XLen,YLen,Count,Set,XCount,YCount,LoopRec,SetUp// 当前坐标,目标坐标,坐标距离,总坐标数,步进,X Y坐标数 循环记数
if(Hwnd>64)
windowclienttoscreen(Hwnd,x,y,Tox,Toy)
else
Tox=x
Toy=y
end
mousegetpoint(Nowx,Nowy)
XLen=mabs(Tox-Nowx)
YLen=mabs(Toy-Nowy)
Count=msqrt(XLen*XLen + YLen*YLen)
SetUp=cint(Count/10)
editsettext("edit5",Count&","&SetUp)
if(SetUp<10)
SetUp=10
end
Set=cint(Count/SetUp)//步进值
XCount=cint((Tox-Nowx)/Set)
YCount=cint((Toy-Nowy)/Set)
for(var i=0;i<Count;i=i+Count/Set )
LoopRec=LoopRec+1
Tox=Nowx+XCount*LoopRec
Toy=Nowy+YCount*LoopRec
if(Tox<0 && Toy<0)
drivemousemove(Nowx,Nowy)
else
drivemousemove(Tox,Toy)
end
sleep(3)
end
end
作者:
TG·天歌
时间:
2015-2-17 15:05
提示:
作者被禁止或删除 内容自动屏蔽
作者:
chenyl0769
时间:
2015-3-9 10:21
套用代码的时候怎么有偏移呢,都不能准确到坐标上了,要怎么改
作者:
民工唐子
时间:
2015-8-3 07:43
本帖最后由 民工唐子 于 2015-8-3 07:44 编辑
我也用了下,发现有偏移.经过思考,跟另外一个人的轨迹鼠标做了对比,发现最后需要修正一下.我把你的代码翻译成中文了,便于英文不灵光的人看....我也是不灵光的人
.贴上我的代码!没有测试过哦.有心人测试了,反馈下!谢谢!
功能 鼠标轨迹移动(x,y,对象)//模拟轨迹
变量 当前坐标X,当前坐标Y,目标坐标x,目标坐标y,坐标距离X长度,坐标距离Y长度,实际直线长度,移动一次的长度,XCount,YCount,LoopRec,移动次数// 当前坐标,目标坐标,坐标距离,总坐标数,步进,X Y坐标数 循环记数
变量 轨迹目标坐标x,轨迹目标坐标y
目标坐标x = x
目标坐标y = y
对象.GetCursorPos(当前坐标X,当前坐标Y) //获取当前鼠标的坐标
坐标距离X长度 = 数学绝对值(目标坐标x - 当前坐标X)
坐标距离Y长度 = 数学绝对值(目标坐标y - 当前坐标Y)
实际直线长度 = 数学开方(坐标距离X长度*坐标距离X长度 + 坐标距离Y长度*坐标距离Y长度)
移动次数 = 转整型(实际直线长度/10) //每次移动10个像素,计算总共需要移动多少次.
调试输出("移动次数"&移动次数)
//移动次数越大,移动一次的长度就越短
如果(移动次数 < 10) //如果总共移动的次数少于5,则赋值至少移动5次
移动次数 = 10
结束
移动一次的长度 = 转整型(实际直线长度/移动次数)//步进值
调试输出("移动一次的长度"&移动一次的长度)
XCount = 转整型((目标坐标x - 当前坐标X)/移动一次的长度)
YCount = 转整型((目标坐标y - 当前坐标Y)/移动一次的长度)
遍历(变量 i=0;i < 实际直线长度-1;i = i + 实际直线长度/移动一次的长度) //减少一步,后面做最后的修正,防止鼠标偏移
LoopRec = LoopRec + 1 //LoopRec初始值为0
轨迹目标坐标x = 当前坐标X+XCount*LoopRec
轨迹目标坐标y = 当前坐标Y+YCount*LoopRec
如果(目标坐标x < 0 && 目标坐标y < 0)
调试输出("在这里1")
对象.MoveTo(轨迹目标坐标x,轨迹目标坐标y)
否则
调试输出("在这里2")
对象.MoveTo(轨迹目标坐标x,轨迹目标坐标y)
结束
等待(5)
结束
等待(50)
//最后的修正,防止鼠标偏移//非常有必要!
对象.MoveTo(目标坐标x,目标坐标y)//最后的修正,防止鼠标偏移
结束
复制代码
作者:
Gamestory
时间:
2015-9-22 15:39
M我发你不会偏移的 改了我没有上来更新不好意思
欢迎光临 TC官方合作论坛 (http://bbs.52tc.co/)
Powered by Discuz! X3.1