学习游戏脚本制作:按键精灵键鼠同步器源码分享
按键精灵VBS脚本实例源码及详解
【1.基本例子介绍(推荐)】【2.人气工具百宝箱之天龙八部2键盘连按】【3.自动打怪例子】【4.用盒子制作自动加血类脚本的方法】【5、【QQ幻想世界】自动打怪v1.0版】[Relative]SetupOCXFile=[Comment]Content=[Script]//〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓★描★述★〓〓〓〓〓〓〓〓〓〓〓〓☆〓〓////————————————————<[QQ幻想世界自动打怪v1.0版][作者]一只鱼>//游戏设置:———[Tab]找怪热键———[1]打怪热键———[空格]捡物热键//〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓★说★明★〓〓〓〓〓〓〓〓〓〓〓〓☆〓〓////——————————————————————<创建日期:2010/05/31>//〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓★开★始★〓〓〓〓〓〓〓〓〓〓〓〓☆〓〓////——————————————————————<休息计时器归零>n = 0Rem 《开始》//——————————————————————<找怪热键“Tab”>KeyPress 9,1Delay 100//——————————————————————<在选怪的过程中利用时间空隙捡物> KeyPress 32,1//——————————————————————<打怪计时器归零>i = 0Rem 《打怪》//——————————————————————<打怪计时器计数增加>i += 1//——————————————————————<捡物加打怪延时,有效利用延时。
> Delay 1000//——————————————————————<打怪热键“1”>KeyPress 49,1//————————<循环1次打怪,耗时1秒。
这里可以设置打怪时间[10次10秒]>If i >= 10Delay 500Goto 《打怪结束》End IfGoto 《打怪》Rem 《打怪结束》//——————————————————————<捡物热键“空格”>KeyPress 32,1//——————————————————————<捡物延时>Delay 1000//——————————————————————<打死60只怪后坐地休息>If n >= 60Delay 1000//——————————————————————<坐地休息热键“=”>KeyPress 187,1//——————————————————————<坐地休息60秒>t = 60While t <> 0Delay 1000t -= 1Wend//——————————————————————<休息计时器归零>n = 0Else//——————————————————————<休息计时器计数增加>n += 1End If//——————————————————————<重新开始执行>Goto 《开始》//〓〓〓〓〓〓〓〓〓〓〓〓〓〓★结★束★〓〓〓〓〓〓〓〓〓〓〓〓☆〓〓//制作《QQ幻想世界》纯硬件操作自动打怪脚本例子一、制作思路流程:1.首先Tab热键选怪2.在选怪空隙中捡物1次3.开始打怪4.打怪等待时间(默认10次[1次1秒])5.打怪结束后捡物1次6.打死60只怪后坐地休息60秒7.返回重新开始二、游戏热键设置:游戏设置:——[Tab]找怪热键——[1]打怪热键——[空格]捡物热键——[8]休息热键三、脚本制作过程:1.首先Tab热键选怪Rem 《开始》//——————————————————————<找怪热键>KeyPress 9,1Delay 1002.在选怪空隙中捡物1次//——————————————————————<在选怪的过程中利用时间空隙捡物>KeyPress 32,1Delay 5003.开始打怪Rem 《打怪》//——————————————————————<捡物加打怪延时,有效利用延时。
学习怎么用按键精灵制作游戏辅助——脚本源代码干货分享
学习怎么用按键精灵制作游戏辅助——脚本源代码干货分享一、用按键精灵确定人物朝向(以剑灵自动寻路为例)的代码在剑灵右上角的小地图里找色/找图,箭头坐标存储在(x1,y1),箭尾坐标存储在(x2,y2) FindColor1200,0,1920,300,"箭头颜色",x1,y1If x1 > 0 And y1> 0 ThenEnd IfFindColor1200,0,1920,300,"箭尾颜色",x2,y2If x1 > 0 And y1> 0 ThenEnd If'计算斜率/正切值斜率= (y1 - y2) / (x1 -x2)'计算角度角度= Atn(斜率)二、用按键精灵解决用户密码泄露问题的代码Function 加解密(源文件, 秘钥)Dim Z, iDim A, B, C加解密= ""If Len(源文件) = 0 Then’如果密码为空,则初始化为空加解密= ""Exit FunctionEnd If'调用Rnd函数使以后Rnd函数所产生的Rnd为相同的伪随机数列Z = Rnd(-秘钥)For i = 1 To Len(源文件)’将密码字符串一个一个字符通过加密,转换成另一个字符C = Mid(源文件, i, 1)A = Asc(C)B = Int(126 * Rnd) And&H7F’这里的&H7F,是指生成的伪随机代码,只取7位,以免数据溢出A = A Xor B’Xor是可逆的,第一次运行时是得到加密后的数据,再运行一次是得到解密后的数据C = Chr(A)加解密= 加解密+ CNextEnd Function举个例子吧~Function 加解密(源文件, 秘钥)Dim Z, iDim A, B, C加解密= ""If Len(源文件) = 0 Then加解密= ""Exit FunctionEnd If'调用Rnd函数使以后Rnd函数所产生的Rnd为相同的伪随机数列Z = Rnd(-密钥)For i = 1 To Len(源文件)C = Mid(源文件, i, 1)A = Asc(C)B = Int(126 * Rnd) And&H7FA = A Xor BC = Chr(A)加解密= 加解密+ CNextEnd FunctionEvent Form1.Load//获取小节名(如"e1df741f-d5ec-4ad7-969d-adb139c6a24f"),同一个Q文件生成的小节名不变a = GetMacroID()//获取到当前脚本/小精灵de ID加密文件=Plugin.File.ReadINI("e1df741f-d5ec-4ad7-969d-adb139c6a24f","Form1 .InputBox2.T ext", ".\uservar.ini")解密文件= 加解密(加密文件, 1234567890)'这里的1234567890是假使的密钥,可以修改,注意保密Form1.InputBox2.T ext = 解密文件End Event//写入密码信息源文件= Form1.InputBox2.T ext加密文件= 加解密(源文件, 1234567890)CallPlugin.File.WriteINI("e1df741f-d5ec-4ad7-969d-adb139c6a24f","Form1.InputBox2.T ext", 加密文件, ".\uservar.ini")//输出信息RunApp "notepad.exe"SayString Form1.InputBox1.T extKeyPress "Enter", 1SayString 源文件三、按键精灵快速排序的代码su = "6|1|2|7|9|3|4|5|10|8"su=Split(su, "|")L = UBound(su)Call ks(0, L)Function ks(L, B)If L > B ThenExit FunctionEnd If //判断数组上标下标是否超出范围i = Lj = Bkey =int( su(L) ) //数组第一位提取作为基数While j>iWhile int ( su(j)) >= key and j > i //要先从最右边开始找找到第一个小于key的数这里添加的j>i的判断是为了防止j的值不断递减导致下标越界j = j - 1WendWhile int (su(i)) <= key and j > i //从最左边开始找找到第一个大于key的数(这里的字符串数组需要转换为数值型)i = i + 1WendIf j>i then // 将和基数key对比得到的两个数对换将大于key的值往右边放小于key的值往左边放T = su(i)su(i) = su(j)su(j) = TEnd IfWend // 这个While 循环当i=j 第一轮比较完退出su(L) = su(i) // 重新设置数组第一个元素为基数su(i) = key// 基数归位(排完一轮之后左边的数<基数<右边的数那么基数就到了排序中它该在的位置。
新版按键精灵X版底层使用代码分享
新版按键精灵X版底层使⽤代码分享按键精灵X亮点多多,这⾥分四⽅⾯简要说明⼀下:1、性能提升:代码⾏效率提升70%以上,函数调⽤效率提升40%以上,同脚本整体性能⽐按键精灵2014提升10%以上。
2、体验更好:调试反应迅速,多次调试内存不会导致内存泄漏积累、CPU占⽤过⾼的情况。
3、更加稳定:内存占⽤有所改善,调试、运⾏不容易崩溃,不会因为杀软或优化的缘故导致脚本⽆法执⾏。
4、功能更强:QUI系统优化、附件系统优化、标准库重做、多线程系统优化,功能⽐2014版更强⼤。
获取窗⼝焦点1 /***********2 *获取窗⼝焦点(*底层识别)3 ************/4 Function windowsIn()5 //获取窗⼝句柄6 Hwnd = Window.Find("WeChatMainWndForPC", "微信")7 //窗⼝复原8 Window.Restore (Hwnd)9 //窗⼝移动10 Window.Move(Hwnd, 300, 200)11 //重设窗⼝⼤⼩12 Window.SetClientSize(Hwnd, 850, 795)13 //获取窗⼝坐标14 sRect = Window.GetWindowRect(Hwnd)15 //MsgBox "得到窗⼝句柄的边框⼤⼩(包括标题栏)为:"& sRect16 //下⾯这句⽤于分割字符串,将横坐标和纵坐标分成两个字符串17 MyArray = Split(sRect, "|")18 //下⾯这句将字符串转换成数值19 W1 = Clng(MyArray(1)): H1 = Clng(MyArray(2))20 W2 = Clng(MyArray(3)) : H2 = Clng(MyArray(4))21 //MsgBox "边框⼤⼩: " & W2-W1 & "" & H2-H122 sosow=W1+11723 sosoh = H1 + 2624 TracePrint W1 & "::" & H1 & "::" & W2 & "::" & H225 End FunctionView Code⼤漠绑定1 /*****************2 **⼤漠绑定插件命令(*底层识别)3 *******************/4 Function findOcr()5 dm_ret = dm.SetDict(0, GetResPath()&"dm.txt")6 dm_ret = dm.GetClientSize(Hwnd,W2-W1,H2-H1)7 dm_ret = dm.BindWindow(Hwnd, "gdi", "normal", "normal", 0)8 Delay 2009 If dm_ret = 0 Then10 TracePrint ("⼤漠界⾯綁定失败")11 Return -112 Exit Function13 Else14 TracePrint ("⼤漠界⾯綁定成功")15 Return 016 End If17 End FunctionView Code⼤漠识字封装1 /*****************2 **⼤漠识字命令(*底层识别)3 *daMoFindOcr(x1,y1,x2,y2)4 *******************/5 Function daMoFindOcr(d1_x1,d1_y1,d1_x2,d1_y2)6 Dim d1_s = dm.Ocr(d1_x1,d1_y1,d1_x2,d1_y2,"727272-202020|000000-eeeeee",0.9)7 TracePrint (d1_s)8 Return d1_s9 End FunctionView Code⼤漠识图封装1 /*****************2 **⼤漠识图命令(*底层识别)3 *dm_findAllPic(x1,y1,x2,y2)4 *******************/5 Function dm_findPic(d3_x1, d3_x2, d3_y1, d3_y2, d3_picUrl)6 Dim d3_dm_ret, d3_intX,d3_intY, d3_count, d3_sss, d3_x, d3_y7 d3_dm_ret = dm.FindPic(d3_x1, d3_x2, d3_y1, d3_y2,GetResPath()& d3_picUrl,"000000",0.9,0,d3_intX,d3_intY)8 If d3_intX >= 0and d3_intY >= 0 Then9 d3_intX = d3_intX10 d3_intY = d3_intY11 TracePrint (d3_intX & "+dm_findPic+" & d3_intY)12 Return 0,d3_intX,d3_intY13 Else14 TracePrint ("-1,-1,-1")15 Return -1,-1,-116 End If17 End FunctionView Code⼤漠全屏识图封装1 /*****************2 **⼤漠识图命令全局(*底层识别)3 *dm_findAllPic(x1,y1,x2,y2)4 *******************/5 Function dm_findAllPic(d2_x1, d2_y1, d2_x2, d2_y2, d2_picUrl)6 dim d2_num = 07 Dim d2_picXY(10)8 Dim d2_daozhangID,d2_shoukuanW,d2_shoukuanH9 Do10 d2_daozhangID,d2_shoukuanW,d2_shoukuanH= dm_findPic(d2_x1,d2_y1,d2_x2,d2_y2,d2_picurl)11 If d2_daozhangID = 0 Then12 d2_num = d2_num + 113 Dim d2_arrayin(1)14 d2_arrayin(d2_shoukuanW)=d2_shoukuanH15 d2_picXY(d2_num)=d2_arrayin16 //x1 = shoukuanW17 d2_y1 = d2_shoukuanH + 2018 TracePrint (d2_x1 & d2_y1 & d2_x2 & d2_y2)19 TracePrint ( "找到" & d2_num & "个,坐标为:"& d2_shoukuanW& d2_shoukuanH)20 End If21 Loop While d2_daozhangID= 022 //TracePrint ( "找到" & num & "个,坐标为:"& piczuobiaoji)23 For Each d2_k, d2_v In d2_picXY24 TracePrint d2_k, d2_v25 Next26 Return d2_num,d2_picXY27 End FunctionView Code最后:按键精灵X版最新版,⾸次将底层转为基于lua,使得代码书写更为⽅便,使⽤流畅度⼤⼤提升!推荐两个插件:1. :(:放在上边显⽰密码)(开源代码:)⼤兵插件(DBSoft.dll)为⼤兵软件系列软件之⼀,由dabingrain⽤VB6SP6,WINXP系统下写的COM型ActiveX Dll ,⼤部分软件可以引⽤使⽤。
按键精灵网游高级脚本编写教程
献给热爱按键精灵的广大爱好者按键精灵学习教程一、键盘命令(2~5页)二、鼠标命令(5~13页)三、控制命令(13~22页)四、颜色/图像命令(22~28页)五、其他命令(28~355页)五、网游脚本实例(35~最后)一、键盘命令1.1.Loop1.1.2.3.MouseWheel 11.2.3.MouseWheel 14.1.脚本例子:语法) 复制代码1.命令名称:RestoreMousePos 恢复上次保存的鼠标位置命令功能:保存当前鼠标位置命令参数:无返回值:无脚本例子:语法) 复制代码1.SaveMousePos1.LoopLoopLoopLoopLoop 1.1.1.则命令功能:判断表达式命令参数:参数1 条件型,表达式返回值:无脚本例子:语法) 复制代码1.例子1:2.i=03.If i=0 Then4.Msgbox "条件判断符合被通过!!"5.End If1.1.可当注释,也可以为Goto跳转指令作标记2.Rem脚本开始脚本例子:语法) 复制代码命令名称:RestartScript 重新启动脚本运行命令功能:重新启动脚本运行命令参数:无返回值:无脚本例子:语法) 复制代码1.For i=0 to 22.Delay10003.Call0, 1024, 768, "屏幕内容填写" & i, "0000FF")4.NextRestartScript1.则循环命令功能:条件循环命令参数:参数1 条件型,循环条件返回值:无脚本例子:语法) 复制代码1.i=02.While i=03.Msgbox "我停不下来啦!!快住手"4.Wend1.1.1.,则默认展开到按键精灵所在的文件夹中2.mp。
如果不指定要释放的文件,则默认释放所有文件3.PutAttachment "c:\","*.bmp"4.plugin","*.dll"1.,则默认展开到按键精灵所在的文件夹中2.mp。
按键精灵教程
TiShiXinXI = "当您按下脚本的启动热键 F10 "&vbCrLf&"脚本即可帮你模拟按键输入 A "
Gosub 提示
TiShiXinXI = "本教程演示完毕!"&vbCrLf&"快点试试您的第一个脚本吧!"
Gosub 提示
Gosub GetABPoint
Gosub 慢慢移动
LeftClick 1
Delay 3000
LeftClick 1
Return 介绍1
//功能模块3:脚本编辑器界面,介绍鼠标命令的使用
Sub 介绍2
TiShiXinXI = "请看鼠标命令面板"&vbCrLf&"可以模拟鼠标的操作"
Return 提示
//常用:获取A点和B点的坐标,A点是当前坐标点,B点是目的坐标点
Sub GetABPoint
//获取A点坐标信息
VBSCall GetCursorPos(ax,ay)
//获取B点坐标信息,B点坐标 = 窗口坐标 + 相对坐标
Plugin hWnd=Window.Foreground()
Gosub 慢慢移动
Delay 2000
LeftClick 1
// Delay 1000
//打开了脚本编辑器,介绍脚本编辑器的功能
TiShiXinXI = "现在您看到的是脚本编辑界面"&vbCrLf&"这里是创造脚本的舞台"
Gosub 提示
Gosub 提示
按键精灵脚本制作教程(全)
按键精灵脚本制作教程(全)一、前言所谓游戏外挂,其实是一种游戏外辅程序,它可以协助玩家自动产生游戏动作、修改游戏网络数据包以及修改游戏内存数据等,以实现玩家用最少的时间和金钱去完成功力升级和过关斩将。
虽然,现在对游戏外挂程序的“合法”身份众说纷纭,在这里我不想对此发表任何个人意见,让时间去说明一切吧。
不管游戏外挂程序是不是“合法”身份,但是它却是具有一定的技术含量的,在这些小小程序中使用了许多高端技术,如拦截Sock技术、拦截API技术、模拟键盘与鼠标技术、直接修改程序内存技术等等。
本文将对常见的游戏外挂中使用的技术进行全面剖析。
二、认识外挂游戏外挂的历史可以追溯到单机版游戏时代,只不过当时它使用了另一个更通俗易懂的名字??游戏修改器。
它可以在游戏中追踪锁定游戏主人公的各项能力数值。
这样玩家在游戏中可以达到主角不掉血、不耗费魔法、不消耗金钱等目的。
这样降低了游戏的难度,使得玩家更容易通关。
随着网络游戏的时代的来临,游戏外挂在原有的功能之上进行了新的发展,它变得更加多种多样,功能更加强大,*作更加简单,以至有些游戏的外挂已经成为一个体系,比如《石器时代》,外挂品种达到了几十种,自动战斗、自动行走、自动练级、自动补血、加速、不遇敌、原地遇敌、快速增加经验值、按键精灵……几乎无所不包。
游戏外挂的设计主要是针对于某个游戏开发的,我们可以根据它针对的游戏的类型可大致可将外挂分为两种大类。
一类是将游戏中大量繁琐和无聊的攻击动作使用外挂自动完成,以帮助玩家轻松搞定攻击对象并可以快速的增加玩家的经验值。
比如在《龙族》中有一种工作的设定,玩家的工作等级越高,就可以驾驭越好的装备。
但是增加工作等级却不是一件有趣的事情,毋宁说是重复枯燥的机械劳动。
如果你想做法师用的杖,首先需要做基本工作--?砍树。
砍树的方法很简单,在一棵大树前不停的点鼠标就可以了,每10000的经验升一级。
这就意味着玩家要在大树前不停的点击鼠标,这种无聊的事情通过"按键精灵"就可以解决。
继续教育网按键精灵源码
aa = a
randomize
MoveTo int(Rnd*1366),int(Rnd*768)
End If
End if
Call FindPic(0,0,1365,767,"Attachment:\q.bmp",0.9,x,y)
Delay 100
LeftClick 1
KeyPress "Right", 1
SayString m(2)'"134034"
Delay 100
Goto xunzhao3
Else
MoveTo 1360,286'1060, 190'下边的密码输入框
Delay 500
LeftClick 1
Delay 500
LeftClick 1
Delay 500
Call Plugin.Media.Play("C:\Users\Administrator\Desktop\梨花又开放.mp3")
End If
Call FindPic(0,0,1365,767,"Attachment:\100.bmp",0.9,x,y)
Goto xunzhao1
Else
goto xuexi
End If
Rem xunzhao1
Call FindPic(0, 0, 1365, 767, "Attachment:\yonghuming1.bmp", 0.9, x, y)
If x>=0 and y>=0 Then
按键精灵的原理和编写方法(1)
按键精灵的原理和编写方法(1)按键精灵的原理和编写方法(1)2009-08-14 16:27:40| 分类:默认分类 |字号订阅按键精灵是一类很普遍的游戏插件,wow raid过程中部分职业的某些操作就需要此类插件(文俊的牧师号在打某些BOSS时驱散用到过)。
类似的插件无非是用程序来模拟重复性的键盘动作。
游戏中进行键盘操作的程序可以理解为:按下某键——键盘驱动程序将此事件传递给操作系统——操作系统将此事件插入消息队列——此消息被发送到当前活动窗口。
按照这个过程来理解程序,剩下的只不过要将抽象化的语句翻译成代码。
当然很多过程编程工具(.NET)会自动处理,而不需你去理会。
(如如何插入消息队列,消息队列的管理,无用对象的释放)。
第一个问题,按下如何用程序来模拟在键盘上按下某键。
日常操作中,当用户在键盘上按下某个按键时,键盘内芯片会检测到这个动作,并将这个信号传递给计算机。
对于每个按键,键盘分配给它不同的编码,称做键盘扫描码。
当敲击键盘时,底层上实际传递给计算机消息队列的是该按键的键盘扫描码,所以知道了欲按键的扫描码,就可以将该信息传递给电脑,从而达到模拟按键的功能。
第二个问题,键盘驱动程序如何把此事件传递给操作系统。
解决第一个问题的关键是必须知道按键的键盘扫描码,但是仅仅知道键盘扫描码不够。
因为操作系统需要得到的信息的并不是键盘扫描码。
因为键盘扫描码是跟具体的硬件相关的,同一个键在不同键盘上的扫描码有可能不同。
键盘控制器将这个扫描码传给计算机,然后交给键盘驱动程序。
键盘驱动程序会完成相关的工作,并把这个扫描码转换为键盘虚拟码。
键盘虚拟码是针对键盘扫描码的非通用性所提出。
尽管出于硬件原因,同一个按键可能有不同的扫描码,但是无论什么键盘,同一个按键的虚拟码总是相同的,这样程序就可以识别了。
简单点说,虚拟码就是我们经常可以看到的像VK_A,VK_B这样的常数,比如键a的虚拟码(字母大小写虽然是同一个键,但是虚拟码不同)是&H61(即十进制的97,一般用16进制来表示虚拟码)。
挂机必备-按键精灵网游脚本编写教程
按键精灵网游脚本编写教程一、键盘命令(2~5页)二、鼠标命令(5~13页)三、控制命令(13~22页)四、颜色/图像命令(22~28页)五、其他命令(28~355页)五、网游脚本实例(35~最后)一、键盘命令命令名称: GetLastKey 检测上次按键命令功能: 检测上次按键命令参数:参数1整数型,可选:变量名返回值:无脚本例子: (8.x语法) 复制代码1.//脚本运行到这一行不会暂停,调用的时候立即返回,得到调用之前最后一次按下的按键码保存在变量Key里。
2.Key=GetLastKey()3.If Key = 13Then4. Msgbox"你上次按下了回车键"5.EndIf脚本例子:ﻫ(7.x语法) 复制代码1.//脚本运行到这一行不会暂停,调用的时候立即返回,得到调用之前最后一次按下的按键码保存在变量Key里。
2.GetLastKey Key3.If Key = 134. Msgbox "你上次按下了回车键"5.EndIf命令名称: KeyDown 按住命令功能: 键盘按住命令参数: 参数1整数型,键盘虚拟码(8.X支持按键字符)参数2整数型,次数返回值: 无脚本例子:ﻫ(8.x语法)复制代码1.//KeyDown、KeyDownS、KeyDownH2.//KeyDownS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用3.//KeyDownH:硬件模拟方式,仅支持PS(圆口)的键盘点击查看使用硬件模拟方式的注意事项4.KeyDown 65,15.//65是A键的按键码,上面的语句表示按住A键1次6.7.KeyDown "A",18.//上面的支持按键字符,语句表示按住A键1次脚本例子:(7.x语法) 复制代码1.//KeyDown、KeyDownS、KeyDownH2.//KeyDownS:超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用3.//KeyDownH: 硬件模拟方式,仅支持PS(圆口)的键盘点击查看使用硬件模拟方式的注意事项4.KeyDown65,15.//65是A键的按键码,上面的语句表示按住A键1次命令名称:KeyPress按键命令功能:键盘按键命令参数:参数1整数型,键盘虚拟码(8.X支持按键字符)ﻫ参数2整数型,次数返回值:无脚本例子: (8.x语法)复制代码1.//KeyPress、KeyPressS、KeyPressH2.//KeyPressS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用3.//KeyPressH: 硬件模拟方式,仅支持PS(圆口)的键盘点击查看使用硬件模拟方式的注意事项4.KeyPress 65,15.//65是A键的按键码,上面的语句表示按A键1次6.7.KeyPress"A",18.//上面的支持按键字符,语句表示按A键1次脚本例子:(7.x语法) 复制代码1.//KeyPress、KeyPressS、KeyPressH2.//KeyPressS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用3.//KeyPressH:硬件模拟方式,仅支持PS(圆口)的键盘点击查看使用硬件模拟方式的注意事项4.KeyPress 65,15.//65是A键的按键码,上面的语句表示按A键1次命令名称:KeyUp 弹起命令功能: 键盘弹起命令参数: 参数1 整数型,键盘虚拟码(8.X支持按键字符)ﻫ参数2整数型,次数返回值: 无脚本例子: (8.x语法) 复制代码1.//KeyUp、KeyUpS、KeyUpH2.//KeyUpS:超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用3.//KeyUpH: 硬件模拟方式,仅支持PS(圆口)的键盘点击查看使用硬件模拟方式的注意事项4.KeyUp 65,15.//65是A键的按键码,上面的语句表示松开A键1次6.7.KeyUp "A",18.//上面的支持按键字符,语句表示松开A键1次脚本例子: (7.x语法) 复制代码1.//KeyUp、KeyUpS、KeyUpH2.//KeyUpS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用3.//KeyUpH: 硬件模拟方式,仅支持PS(圆口)的键盘点击查看使用硬件模拟方式的注意事项4.KeyUp 65,15.//65是A键的按键码,上面的语句表示松开A键1次命令名称: WaitKey等待按任意键命令功能: 等待按任意键命令参数:参数1整数型,可选:变量名返回值: 无脚本例子:ﻫ(8.x语法) 复制代码1.Key=WaitKey()2.//脚本运行到这一行会暂停,当用户按下键盘后继续执行,并且把用户的按键码保存在变量Key里3.If Key = 13 Then4. MessageBox "恭喜你按下了回车键"5.End If脚本例子: (7.x语法)复制代码1.WaitKey Key2.//脚本运行到这一行会暂停,当用户按下键盘后继续执行,并且把用户的按键码保存在变量Key里3.If Key = 134. Msgbox "恭喜你按下了回车键"5.EndIf二、鼠标命令命令名称:GetCursorPos得到鼠标位置坐标命令功能: 得到当前鼠标所在的位置坐标命令参数: 参数1 整数型,返回x坐标ﻫ参数2整数型,返回y坐标返回值: 无脚本例子: (8.x语法) 复制代码1.GetCursorPos mx,my2.//把当前鼠标位置的x和y坐标放在变量mx和my中脚本例子:ﻫ(7.x语法)复制代码1.VBSCall GetCursorPos(mx,my)2.//把当前鼠标位置的x和y坐标放在变量mx和my中命令名称:GetCursorShape得到鼠标形状命令功能: 得到当前鼠标的形状特征命令参数: 参数1整数型,参数返回值:整数型,鼠标的形状值脚本例子:ﻫ(8.x语法) 复制代码1.//参数:0是6.83之前的版本默认的参数2.//参数: 1可用于一些在参数0下无法区分鼠标形状代码的情况3.//下面是我们普通的WINDOWS鼠标形状特征4.//不同电脑上鼠标形状特征也许不同,请使用"抓点抓色"功能抓取正确的鼠标形状特征5.Shape1 = 15933502876.//下面是我们访问网页超链接时候的手型鼠标形状7.Shape2 = 10559913298.shape=GetCursorShape(0)9.If shape = shape1 Then10. MessageBox "当前鼠标形状是普通的WINDOWS鼠标"11.ElseIf shape= shape2 Then12.MessageBox "当前鼠标形状是手型鼠标"13.Else14. MessageBox "不认识当前鼠标形状!"15.EndIf脚本例子: ﻫ(7.x 语法) 复制代码1.//参数: 0 是6.83之前的版本默认的参数2.//参数: 1 可用于一些在参数0下无法区分鼠标形状代码的情况3.//下面是我们普通的WINDOWS鼠标形状特征4.//不同电脑上鼠标形状特征也许不同,请使用"抓点抓色"功能抓取正确的鼠标形状特征5.Shape1 = 15933502876.//下面是我们访问网页超链接时候的手型鼠标形状7.Shape2 = 10559913298.VBSCall Shape=GetCursorShape(0)9.Ifshape = shape110.MessageBox当前鼠标形状是普通的WINDOWS鼠标11.ElseIf shape = shape212. MessageBox 当前鼠标形状是手型鼠标13.Else14. MessageBox 不认识当前鼠标形状!15.EndIf命令名称: GetLastClick 检测上次按过的鼠标键命令功能:检测上一次按下的鼠标代码命令参数: 参数1 整数型,可选:变量名返回值:无脚本例子:ﻫ(8.x 语法)复制代码1.Mouse=GetLastClick()2.If Mouse =32770Or Mouse =32769 Then3.Msgbox "你按下了鼠标左键"4.End If脚本例子:ﻫ(7.x语法) 复制代码1.GetLastClick Mouse2.IfMouse =32770 Or Mouse =327693. Msgbox "你按下了鼠标左键"4.EndIf命令名称:LeftClick 左键单击命令功能:模拟点击鼠标左键命令参数: 参数1 整数型,次数返回值:无脚本例子: (8.x语法) 复制代码1.//LeftClick、LeftClickS、LeftClickH2.//LeftClickS:超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//LeftClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.LeftClick 55.//在当前鼠标的位置单击鼠标左键5次脚本例子: (7.x语法) 复制代码1.//LeftClick、LeftClickS、LeftClickH2.//LeftClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//LeftClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.LeftClick 55.//在当前鼠标的位置单击鼠标左键5次命令名称: LeftDoubleClick 左键双击命令功能: 模拟双击鼠标左键命令参数:参数1整数型,次数返回值:无脚本例子:(8.x语法)复制代码1.//LeftDoubleClick、LeftDoubleClickS、LeftDoubleClickH]2.//LeftDoubleClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//LeftDoubleClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.LeftDoubleClick 55.//在当前鼠标的位置双击鼠标左键5次脚本例子:复制代码(7.x语法)1.//LeftDoubleClick、LeftDoubleClickS、LeftDoubleClickH]2.//LeftDoubleClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//LeftDoubleClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.LeftDoubleClick 55.//在当前鼠标的位置双击鼠标左键5次命令名称:LockMouse 锁定鼠标位置命令功能:锁定鼠标位置,用户将不能通过移动鼠标而改变鼠标位置,而脚本仍可以改变鼠标位置命令参数:无返回值:无脚本例子:(8.x语法)复制代码1.//在脚本开始的时候使用这个命令,可以有效防止用户误触鼠标引起脚本执行出错2.LockMouse3.Do4.Delay 10005.Loop脚本例子: (7.x语法) 复制代码1.//在脚本开始的时候使用这个命令,可以有效防止用户误触鼠标引起脚本执行出错2.LockMouse3.WhileTrue4.Delay 10005.EndWhile命令名称: MiddleClick中键单击命令功能: 模拟点击鼠标中键命令参数: 参数1整数型,次数返回值:无脚本例子:ﻫ(8.x语法) 复制代码1.//MiddleClick、MiddleClickS、MiddleClickH2.//MiddleClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//MiddleClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.MiddleClick 55.//在当前鼠标的位置单击鼠标中键5次脚本例子: ﻫ(7.x语法) 复制代码1.//MiddleClick、MiddleClickS、MiddleClickH2.//MiddleClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//MiddleClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.MiddleClick 55.//在当前鼠标的位置单击鼠标中键5次命令名称: MouseWheel鼠标滚轮命令功能:滚动鼠标滚轮命令参数: 参数1整数型,滚动量返回值:无脚本例子:ﻫ(8.x 语法)复制代码1.//如果滚动量为正,向上滚动;否则向下滚动.2.//仅支持Windows 2000以上的操作系统.3.MouseWheel 14.//把鼠标滚轮向上滚动1格脚本例子:(7.x语法) 复制代码1.//如果滚动量为正,向上滚动;否则向下滚动.2.//仅支持Windows2000以上的操作系统.3.MouseWheel 14.//把鼠标滚轮向上滚动1格命令名称: MoveR 鼠标相对移动命令功能:鼠标相对移动到命令参数: 参数1 整数型,X距离ﻫ参数2整数型,Y距离返回值:无脚本例子:ﻫ(8.x语法) 复制代码1.//MoveR、MoveRS、MoveRH2.//MoveRS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//MoveRH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.//当前鼠标在(100,100)点,使用下面语句5.MoveR 200,3006.//之后,鼠标就被移到了(100+200,100+300)处,也就是坐标(300,400)处7.//提示:使用硬件模拟方式不能碰键盘鼠标,否则会导致出错脚本例子: (7.x语法)复制代码1.//MoveR、MoveRS、MoveRH2.//MoveRS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//MoveRH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.//当前鼠标在(100,100)点,使用下面语句5.MoveR 200,3006.//之后,鼠标就被移到了(100+200,100+300)处,也就是坐标(300,400)处7.//提示:使用硬件模拟方式不能碰键盘鼠标,否则会导致出错命令名称:MoveTo鼠标移动命令功能:移动鼠标到命令参数: 参数1 整数型,X坐标ﻫ参数2 整数型,Y坐标返回值: 无脚本例子:ﻫ(8.x 语法) 复制代码1.//MoveTo、MoveToS、MoveToH2.//MoveToS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//MoveToH: 硬件模拟方式,仅支持PS(圆口)的鼠标4.MoveTo 100,2005.//把鼠标移动到(100,200)这个点上6.intX=507.intY=1508.MoveTo intX,intY9.//把鼠标移动到(intX,intY)这个点上,需要5.50以上版本支持.脚本例子: ﻫ(7.x语法) 复制代码1.//MoveTo、MoveToS、MoveToH2.//MoveToS:超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//MoveToH:硬件模拟方式,仅支持PS(圆口)的鼠标4.MoveTo 100,2005.//把鼠标移动到(100,200)这个点上6.intX=507.intY=1508.MoveTo intX,intY9.//把鼠标移动到(intX,intY)这个点上,需要5.50以上版本支持.命令名称:RestoreMousePos恢复上次保存的鼠标位置命令功能: 保存当前鼠标位置命令参数:无返回值: 无脚本例子: (8.x语法) 复制代码1.SaveMousePos2.//保存当前鼠标位置3.Delay1004.MoveTo 500,205.Delay 1006.RestoreMousePos7.//将鼠标移动到上一次保存的鼠标位置8.//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,9.//这样脚本执行后鼠标的位置就不会变化脚本例子: ﻫ(7.x语法) 复制代码1.SaveMousePos2.//保存当前鼠标位置3.Delay 1004.MoveTo 500,205.Delay 1006.RestoreMousePos7.//将鼠标移动到上一次保存的鼠标位置8.//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,9.这样脚本执行后鼠标的位置就不会变化命令名称: RightClick 右键单击命令功能: 模拟点击鼠标右键命令参数:参数1 整数型,次数返回值:无脚本例子:ﻫ(8.x语复制代码1.//RightClick、RightClickS、RightClickH2.//RightClickS:超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的法)鼠标都可以使用3.//RightClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.RightClick 55.//在当前鼠标的位置单击鼠标右键5次脚本例子: (7.x语法) 复制代码1.//RightClick、RightClickS、RightClickH2.//RightClickS:超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//RightClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.RightClick 55.//在当前鼠标的位置单击鼠标右键5次命令名称: SaveMousePos 保存当前鼠标所在位置命令功能: 保存当前鼠标位置命令参数: 无返回值: 无脚本例子:(8.x语法) 复制代码1.SaveMousePos2.//保存当前鼠标位置3.Delay1004.MoveTo 500,205.Delay 1006.RestoreMousePos7.//将鼠标移动到上一次保存的鼠标位置8.//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,9.//这样脚本执行后鼠标的位置就不会变化脚本例子: ﻫ(7.x语法) 复制代码1.SaveMousePos2.//保存当前鼠标位置3.Delay 1004.MoveTo 500,205.Delay 1006.RestoreMousePos7.//将鼠标移动到上一次保存的鼠标位置8.//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,9.这样脚本执行后鼠标的位置就不会变化命令名称: UnlockMouse解除锁定鼠标位置命令功能:解除LockMouse命令对鼠标位置的锁定命令参数:无返回值: 无脚本例子:ﻫ(8.x 语法) 复制代码1.脚本例子:(7.x语法) 复制代码1.//如果用户使用了LockMouse命令而没有使用UnlockMouse命令,按键精灵会在脚本结束时自动解除锁定2.UnlockMouse命令名称: WaitClick 按任意鼠标键继续命令功能:脚本执行到这一句暂停,按下任意鼠标键之后继续命令参数:参数1 整数型,可选:变量名返回值:无脚本例子:ﻫ(8.x语法) 复制代码1.last_click=WaitClick()2.MessageBox "您按下了" & last_click脚本例子: (7.x语法) 复制代码1.WaitClick last_click2.MessageBox "您按下了" & last_click三、控制命令脚本例子: (8.x语法)复制代码1.Call子程序("我是子程序,被你调用了")2.EndScript3.//支持中文名变量4.Sub子程序(啊)5. Msgbox啊6.End Sub7.//定义一个过程,可以在脚本中调用这个过程脚本例子:(7.x语法)复制代码命令名称: Do 循环命令功能: 条件循环命令参数:参数1条件型,循环条件返回值:无脚本例子:ﻫ(8.x 语法) 复制代码1.例子1:2.//支持Exit Do命令退出循环3.i=04.DoWhile i=05. Msgbox "我停不下来啦!!快住手"6.Loop7.//当循环条件成立的时候,反复执行循环体8.9.10.例子2:11.i=012.DoUntil i=013. Msgbox "为什么没有循环到我呢?"14.Loop15.Msgbox "循环结束"16.//当循环条件成立的时候,离开循环体17.18.19.例子3:20.i=021.Do Untili=122.Msgbox "我停不下来啦!!快住手"23.Loop24.//当循环条件不成立的时候,反复执行循环体25.26.27.例子4:28.n=029.DoWhile true30. Msgbox "我将循环10次停下来!!"31.If n>=10 Then32. //当循环条件成立的时候,离开循环体33.Exit do34.End if35. n=n+136.Loop37.Msgboxn & "次"38.39.40.例子5:41.i = 042.Do43. MessageBox "ok"44.Loop While i <> 045.//条件放后面,前面的循环内容可以执行一次!脚本例子: ﻫ(7.x语法) 复制代码1.无命令名称:For 循环命令功能: 循环一定次数命令参数: 参数1 整数型,循环次数返回值:无脚本例子:ﻫ(8.x 语法) 复制代码1.例子1:2.//支持Exit For 命令退出循环3.For i=0 To 94.Delay1005.Next6.//循环10次7.8.例子2:9.//支持ExitFor命令退出循环10.For 1011.Delay10012.Next13.//循环10次14.15.16.例子3:17.//支持Exit For 命令退出循环18.For i=0 to 19 step 219.Delay 10020.Next21.//循环10次22.23.例子4:24.//支持Exit For 命令退出循环25.For i=0 to 19 step 226.Delay 10027.If i>9 Then28.Exit For29.End If30.Next31.//循环5次脚本例子: ﻫ(7.x 语法) 复制代码1.For 102.Delay1003.EndFor4.//循环10次命令名称:Function 函数命令功能: 函数命令参数: 多类型,多参数返回值: 多类型脚本例子:ﻫ(8.x 语法) 复制代码1.//支持Exit Function 命令退出函数过程2.Msgbox 函数过程("我是函数,被你调用了")3.EndScript4.Function函数过程(a)5.函数过程=a6.End Function7.//定义一个函数过程,可以在脚本中调用这个函数脚本例子:ﻫ(7.x语法) 复制代码1.无命令名称:Gosub调用子程序命令功能:调用过程命令参数: 参数1字符串型,过程名返回值:无脚本例子:(8.x语法)复制代码1.//可带参数传递2.Call子程序("我是子程序,被你调用了")3.EndScript4.Sub子程序(a)5. Msgbox a6.End Sub7.//定义一个过程,可以在脚本中调用这个过程脚本例子: ﻫ(7.x 语法) 复制代码1.Gosub子程序2.EndScript3.Sub子程序4. Msgbox "我是子程序,被你调用了"5.Return子程序6.//定义一个过程,可以在脚本中调用这个过程命令名称:Goto 跳转到标记命令功能: 跳转到Rem标记处命令参数:参数1 字符串型,标号返回值: 无脚本例子:ﻫ(8.x 语法)复制代码1.Goto标记2.Delay 1003.Rem标记4.Msgbox"你直接跳到这里了!!,上面的延迟没有被执行!!"5.//跳转语句,可以跳转到rem标记过的标记处继续执行脚本例子:(7.x语法) 复制代码 1. Goto 标记2. D elay 1003. Rem 标记4. Msgbox "你直接跳到这里了!!,上面的延迟没有被执行!!"5. //跳转语句,可以跳转到r em 标记过的标记处继续执行命令名称:I f 如果..则 命令功能:判断表达式命令参数:参数1 条件型,表达式 返 回 值:无 脚本例子:ﻫ(8.x语法) 复制代码 1. 例子1:2. i=03. If i=0 Then4. Msg bo x "条件判断符合被通过!!"5. End I f6. //通过判断表达式的取值,来执行后面的动作或控制7.8. 例子2:9. i=110. If i=0 Th en11. Ms gbox "条件判断符合被通过!!"12. Else If i=1 The n13. M sgbox "否则条件判断符合被通过!!"14. E lse15. Msgbox "否则!!"16. End If17. //通过判断表达式的取值,来执行后面的动作或控制脚本例子:ﻫ(7.x 语法) 复制代码 1. i=02. If i=03. M sgb ox "条件判断符合被通过!!"4. EndIf5. //通过判断表达式的取值,来执行后面的动作或控I fC olor 颜色判断命令功能:判断屏幕某点的颜色命令参数:参数1 整数型,屏幕X坐标参数2整数型,屏幕Y坐标ﻫ参数3字符串型,颜色16进制值参数4 整数型,判断条件返回值: 无脚本例子:ﻫ(8.x语法)复制代码1.例子1:2.//判断条件(0:等于 1:不等于 2:近似等于)3.IfColor 860,27,"e1b072",0 Then4. Msgbox "颜色等于"5.Else6. Msgbox "颜色不等于"7.End If8.//判断坐标点(860,27)的颜色是否等于e1b0729.10.11.例子2:12.a=1:b=113.IfColor 650,118,"78F0E8",2 Then14.MessageBox "a"15.ElseIf b=a Then16. MessageBox "b"17.Endif脚本例子:(7.x语法)复制代码1.//判断条件(0:等于 1:不等于2:近似等于)2.IfColor 860,27,e1b072,03. Msgbox "颜色等于"4.Else5.Msgbox "颜色不等于"6.EndIf7.//判断坐标点(860,27)的颜色是否等于e1b072命令名称: Rem 标记/注释命令功能:标记命令可当注释命令参数:参数1 字符串型,文字返回值: 无脚本例子:(8.x语法) 复制代码1.//不支持数字开头的和符号作为标记名2.//标记命令.即可当注释,也可以为Goto跳转指令作标记3.Rem脚本开始脚本例子: (7.x语法) 复制代码1.//标记命令.即可当注释,也可以为Goto跳转指令作标记2.Rem脚本开始命令名称: RestartScript重新启动脚本运行命令功能:重新启动脚本运行命令参数:无返回值:无脚本例子:ﻫ(8.x 语法) 复制代码1.For i=0 to 22.Delay 10003.Call Plugin.Msg.ShowScrTXT(0, 0, 1024, 768, "屏幕内容填写" & i, "0000FF")4.Next5.RestartScript //重新启动脚本运行脚本例子: (7.x语法) 复制代码1.无命令名称: Select情况条件选择命令功能: 根据情况选择条件判断命令参数: 参数1条件型,情况返回值:无脚本例子: (8.x语法) 复制代码1.//不支持判断语句如:Case a>0erVar 变量=0 "输入(0~9)数字"3.//<>---------------------------------------------以下是选择条件结结构判断4.Select Case变量5.Case06. Msgbox "你输入的数字为:0"7.Case 18. Msgbox "你输入的数字为:1"9.Case 210. Msgbox "你输入的数字为:2"11.Case 312. Msgbox "你输入的数字为:3"13.Case 414. Msgbox "你输入的数字为:4"15.Case 516. Msgbox "你输入的数字为:5"17.Case 618. Msgbox "你输入的数字为:6"19.Case 720. Msgbox "你输入的数字为:7"21.Case 822. Msgbox "你输入的数字为:8"23.Case 924. Msgbox "你输入的数字为:9"25.CaseElse26. Msgbox "你输入的数字不正确,请输入(0~9)数字!"27.End Select脚本例子:(7.x语法) 复制代码1.无命令名称: Sub 子程序命令功能: 定义一个过程命令参数:参数1 字符串型,过程名返回值:无脚本例子:ﻫ(8.x语法) 复制代码1.//支持Exit Sub命令退出子程序过程2.Call子程序()3.EndScript4.Sub子程序()5. Msgbox "我是子程序,被你调用了"6.End Sub7.//定义一个过程,可以在脚本中调用这个过程脚本例子: ﻫ(7.x语复制代码1.Gosub子程序法) 2.EndScript3.Sub子程序4. Msgbox "我是子程序,被你调用了"5.Return子程序6.//定义一个过程,可以在脚本中调用这个过程命令名称: While 如果..则循环命令功能:条件循环命令参数:参数1 条件型,循环条件返回值: 无脚本例子:ﻫ(8.x语法) 复制代码1.i=02.While i=03. Msgbox"我停不下来啦!!快住手"4.Wend5.//当循环条件成立的时候,反复执行循环体脚本例子: (7.x语法)复制代码1.i=02.While i=03. Msgbox"我停不下来啦!!快住手"4.EndWhile5.//当循环条件成立的时候,反复执行循环体四、颜色/图像命令命令名称: FindCenterColor中心找色命令功能:在屏幕区域从中心开始查找指定的颜色命令参数: 参数1 整数型,屏幕左上角x坐标ﻫ参数2整数型,屏幕左上角y坐标ﻫ参数3 整数型,屏幕右下角x坐标参数4 整数型,屏幕右下角y坐标参数5字符串型,16进制颜色值参数6 整数型,返回x坐标参数7整数型,返回y坐标返回值:无脚本例子:ﻫ(8.x 语法) 复制代码1.//FindCenterColor left,top,right,bottom,c,x,y2.//在区域内从中心到外围找颜色为c的点,把坐标保存在变量x和y中3.//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,下界限4.//颜色是类似于"0000FF"的字符串,如果不取变量,别忘了加双引号5.//如果没有找到这个颜色,则x和y的值都被置为-16.FindCenterColor 0,0,800,600,"0000FF",x,y7.If x>0 and y>0Then8. MoveTo x,y9.EndIf10.//在区域(0,0,800,600)中找红色("0000FF")的点,如果找到,则把鼠标移动到这个点脚本例子: (7.x语法) 复制代码1.//VBSCall FindCenterColor(left,top,right,bottom,c,x,y)2.//在区域内从中心到外围找颜色为c的点,把坐标保存在变量x和y中3.//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,下界限4.//颜色是类似于"0000FF"的字符串,如果不取变量,别忘了加双引号5.//如果没有找到这个颜色,则x和y的值都被置为-16.VBSCall FindCenterColor(0,0,800,600,"0000FF",x,y)7.If x>0 and y>08. MoveTo x,y9.EndIf10.//在区域(0,0,800,600)中找红色("0000FF")的点,如果找到,则把鼠标移动到这个点命令名称: FindColor 找色命令功能:在屏幕区域从左到右、从上到下的查找指定的颜色命令参数:参数1整数型,屏幕左上角x坐标ﻫ参数2 整数型,屏幕左上角y坐标ﻫ参数3 整数型,屏幕右下角x坐标ﻫ参数4 整数型,屏幕右下角y坐标ﻫ参数5 字符串型,16进制颜色值参数6 整数型,返回x坐标ﻫ参数7 整数型,返回y坐标返回值:无脚本例子:ﻫ(8.x语法) 复制代码1.//FindColor left,top,right,bottom,c,x,y2.//在区域内从左到右,从上到下找颜色为c的点,把坐标保存在变量x和y中3.//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,下界限4.//颜色是类似于"0000FF"的字符串,如果不取变量,别忘了加双引号5.//如果没有找到这个颜色,则x和y的值都被置为-16.FindColor 0,0,800,600,"0000FF",x,y7.If x>0 and y>0 Then8. MoveTo x,y9.EndIf10.//在区域(0,0,800,600)中找红色("0000FF")的点,如果找到,则把鼠标移动到这个点脚本例子: ﻫ(7.x语法) 复制代码1.//VBSCall FindColor(left,top,right,bottom,c,x,y)2.//在区域内从左到右,从上到下找颜色为c的点,把坐标保存在变量x和y中3.//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,下界限4.//颜色是类似于"0000FF"的字符串,如果不取变量,别忘了加双引号5.//如果没有找到这个颜色,则x和y的值都被置为-16.VBSCall FindColor(0,0,800,600,"0000FF",x,y)7.If x>0 and y>08. MoveTo x,y9.EndIf10.//在区域(0,0,800,600)中找红色("0000FF")的点,如果找到,则把鼠标移动到这个点命令名称:FindColorEx模糊找色命令功能:在屏幕区域模糊查找指定的颜色命令参数: 参数1整数型,屏幕左上角x坐标参数2整数型,屏幕左上角y坐标参数3 整数型,屏幕右下角x坐标参数4 整数型,屏幕右下角y坐标参数5字符串型,16进制颜色值参数6 整数型,查找方式ﻫ参数7整数型,相似度ﻫ参数8整数型,返回x坐标ﻫ参数9整数型,返回y坐标返回值:无脚本例子:ﻫ(8.x 语法) 复制代码1.//FindColorEx left,top,right,bottom,c,type,similar,x,y2.//在区域内找颜色为c的点,把坐标保存在变量x和y中3.//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,下界限4.//颜色是类似于"0000FF"的字符串,如果不取变量,别忘了加双引号5.//type表示查找方式。
按键精灵脚本编写命令大全及示例之欧阳地创编
按键精灵学习教程一、一、键盘命令(2~5页)二、鼠标命令(5~13页)三、控制命令(13~22页)四、颜色/图像命令(22~28页)五、其他命令(28~35页)五、网游脚本实例(35~最后)一、键盘命令命令名称:GetLastKey 检测上次按键命令功能:检测上次按键命令参数:参数1 整数型,可选:变量名返回值:无脚本例子:(8.x语法) 复制代码1.//脚本运行到这一行不会暂停,调用的时候立即返回,得到调用之前最后一次按下的按键码保存在变量Key里。
2.Key=GetLastKey()3.If Key = 13 Then4. Msgbox "你上次按下了回车键"5.End If脚本例子: (7.x语法) 复制代码1.//脚本运行到这一行不会暂停,调用的时候立即返回,得到调用之前最后一次按下的按键码保存在变量Key里。
2.GetLastKey Key3.If Key = 134. Msgbox "你上次按下了回车键"5.EndIf命令名称:KeyDown 按住命令功能:键盘按住命令参数:参数1 整数型,键盘虚拟码(8.X支持按键字符)参数2 整数型,次数返回值:无脚本例子:(8.x语法) 复制代码1.//KeyDown、KeyDownS、KeyDownH2.//KeyDownS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用3.//KeyDownH: 硬件模拟方式,仅支持PS(圆口)的键盘点击查看使用硬件模拟方式的注意事项4.KeyDown 65,15.//65是A键的按键码,上面的语句表示按住A键1次6.7.KeyDown "A",18.//上面的支持按键字符,语句表示按住A键1次脚本例子: (7.x语法) 复制代码1.//KeyDown、KeyDownS、KeyDownH2.//KeyDownS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用3.//KeyDownH: 硬件模拟方式,仅支持PS(圆口)的键盘点击查看使用硬件模拟方式的注意事项4.KeyDown 65,15.//65是A键的按键码,上面的语句表示按住A键1次命令名称:KeyPress 按键命令功能:键盘按键命令参数:参数1 整数型,键盘虚拟码(8.X支持按键字符)参数2 整数型,次数返回值:无脚本例子:(8.x语法) 复制代码1.//KeyPress、KeyPressS、KeyPressH2.//KeyPressS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用3.//KeyPressH: 硬件模拟方式,仅支持PS(圆口)的键盘点击查看使用硬件模拟方式的注意事项4.KeyPress 65,15.//65是A键的按键码,上面的语句表示按A键1次6.7.KeyPress "A",18.//上面的支持按键字符,语句表示按A键1次脚本例子: (7.x语法) 复制代码1.//KeyPress、KeyPressS、KeyPressH2.//KeyPressS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用3.//KeyPressH: 硬件模拟方式,仅支持PS(圆口)的键盘点击查看使用硬件模拟方式的注意事项4.KeyPress 65,15.//65是A键的按键码,上面的语句表示按A键1次命令名称:KeyUp 弹起命令功能:键盘弹起命令参数:参数1 整数型,键盘虚拟码(8.X支持按键字符)参数2 整数型,次数返回值:无脚本例子:(8.x语法) 复制代码1.//KeyUp、KeyUpS、KeyUpH2.//KeyUpS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用3.//KeyUpH: 硬件模拟方式,仅支持PS(圆口)的键盘点击查看使用硬件模拟方式的注意事项4.KeyUp 65,15.//65是A键的按键码,上面的语句表示松开A键1次6.7.KeyUp "A",18.//上面的支持按键字符,语句表示松开A键1次脚本例子: (7.x语法) 复制代码1.//KeyUp、KeyUpS、KeyUpH2.//KeyUpS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用3.//KeyUpH: 硬件模拟方式,仅支持PS(圆口)的键盘点击查看使用硬件模拟方式的注意事项4.KeyUp 65,15.//65是A键的按键码,上面的语句表示松开A键1次命令名称:WaitKey 等待按任意键命令功能:等待按任意键命令参数:参数1 整数型,可选:变量名返回值:无脚本例子:(8.x语法) 复制代码1.Key=WaitKey()2.//脚本运行到这一行会暂停,当用户按下键盘后继续执行,并且把用户的按键码保存在变量Key里3.If Key = 13 Then4. MessageBox "恭喜你按下了回车键"5.End If脚本例子: (7.x语法) 复制代码1.WaitKey Key2.//脚本运行到这一行会暂停,当用户按下键盘后继续执行,并且把用户的按键码保存在变量Key 里3. If Key = 134. Msgbox "恭喜你按下了回车键"5. EndIf二、鼠标命令 命令名称:GetCursorPos 得到鼠标位置坐标 命令功能:得到当前鼠标所在的位置坐标 命令参数:参数1 整数型,返回x 坐标参数2 整数型,返回y 坐标 返 回 值:无 脚本例子:(8.x 语法) 复制代码 1. GetCursorPos mx,my 2. //把当前鼠标位置的x 和y 坐标放在变量mx 和my 中脚本例子: (7.x 语法) 复制代码 1. VBSCall GetCursorPos(mx,my) 2. //把当前鼠标位置的x 和y 坐标放在变量mx 和my 中命令名称:GetCursorShape 得到鼠标形状 命令功能:得到当前鼠标的形状特征 命令参数:参数1 整数型,参数 返 回 值:整数型,鼠标的形状值 脚本例子:(8.x 语法) 复制代码 1. //参数: 0 是6.83之前的版本默认的参数 2. //参数: 1 可用于一些在参数0下无法区分鼠标形状代码的情况3. //下面是我们普通的WINDOWS 鼠标形状特征4. //不同电脑上鼠标形状特征也许不同,请使用"抓点抓色"功能抓取正确的鼠标形状特征5. Shape1 = 15933502876. //下面是我们访问网页超链接时候的手型鼠标形状7. Shape2 = 10559913298. shape=GetCursorShape(0)9. If shape = shape1 Then10. MessageBox "当前鼠标形状是普通的WINDOWS 鼠标"11. ElseIf shape = shape2 Then12. MessageBox "当前鼠标形状是手型鼠标"13. Else14. MessageBox "不认识当前鼠标形状!"15. End If脚本例子: (7.x语法) 复制代码1.//参数: 0 是6.83之前的版本默认的参数2.//参数: 1 可用于一些在参数0下无法区分鼠标形状代码的情况3.//下面是我们普通的WINDOWS鼠标形状特征4.//不同电脑上鼠标形状特征也许不同,请使用"抓点抓色"功能抓取正确的鼠标形状特征5.Shape1 = 15933502876.//下面是我们访问网页超链接时候的手型鼠标形状7.Shape2 = 10559913298.VBSCall Shape=GetCursorShape(0)9.If shape = shape110. MessageBox 当前鼠标形状是普通的WINDOWS鼠标11.ElseIf shape = shape212. MessageBox 当前鼠标形状是手型鼠标13.Else14. MessageBox 不认识当前鼠标形状!15.EndIf命令名称:GetLastClick 检测上次按过的鼠标键命令功能:检测上一次按下的鼠标代码命令参数:参数1 整数型,可选:变量名返回值:无脚本例子:(8.x语法) 复制代码1.Mouse=GetLastClick()2.If Mouse =32770 Or Mouse =32769 Then3. Msgbox "你按下了鼠标左键"4.End If脚本例子: (7.x语法) 复制代码1.GetLastClick Mouse2.If Mouse =32770 Or Mouse =327693. Msgbox "你按下了鼠标左键"4.EndIf命令名称:LeftClick 左键单击命令功能:模拟点击鼠标左键命令参数:参数1 整数型,次数返回值:无脚本例子:(8.x语复制代码1.//LeftClick、LeftClickS、LeftClickH法) 2.//LeftClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//LeftClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.LeftClick 55.//在当前鼠标的位置单击鼠标左键5次脚本例子: (7.x语法) 复制代码1.//LeftClick、LeftClickS、LeftClickH2.//LeftClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//LeftClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.LeftClick 55.//在当前鼠标的位置单击鼠标左键5次命令名称:LeftDoubleClick 左键双击命令功能:模拟双击鼠标左键命令参数:参数1 整数型,次数返回值:无脚本例子:(8.x语法) 复制代码1.//LeftDoubleClick、LeftDoubleClickS、LeftDoubleClickH]2.//LeftDoubleClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//LeftDoubleClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.LeftDoubleClick 55.//在当前鼠标的位置双击鼠标左键5次脚本例子: (7.x语法) 复制代码1.//LeftDoubleClick、LeftDoubleClickS、LeftDoubleClickH]2.//LeftDoubleClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//LeftDoubleClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.LeftDoubleClick 55.//在当前鼠标的位置双击鼠标左键5次命令名称:LockMouse 锁定鼠标位置命令功能:锁定鼠标位置,用户将不能通过移动鼠标而改变鼠标位置,而脚本仍可以改变鼠标位置命令参数:无返回值:无脚本例子:(8.x语法) 复制代码1.//在脚本开始的时候使用这个命令,可以有效防止用户误触鼠标引起脚本执行出错2.LockMouse3.Do4.Delay 10005.Loop脚本例子: (7.x语法) 复制代码1.//在脚本开始的时候使用这个命令,可以有效防止用户误触鼠标引起脚本执行出错2.LockMouse3.While True4.Delay 10005.EndWhile命令名称:MiddleClick 中键单击命令功能:模拟点击鼠标中键命令参数:参数1 整数型,次数返回值:无脚本例子:(8.x语法) 复制代码1.//MiddleClick、MiddleClickS、MiddleClickH2.//MiddleClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//MiddleClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.MiddleClick 55.//在当前鼠标的位置单击鼠标中键5次脚本例子: (7.x语法) 复制代码1.//MiddleClick、MiddleClickS、MiddleClickH2.//MiddleClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//MiddleClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.MiddleClick 55.//在当前鼠标的位置单击鼠标中键5次命令名称:MouseWheel 鼠标滚轮命令功能:滚动鼠标滚轮命令参数:参数1 整数型,滚动量返回值:无脚本例子:(8.x语法) 复制代码1.//如果滚动量为正,向上滚动;否则向下滚动.2.//仅支持Windows 2000以上的操作系统.3.MouseWheel 14.//把鼠标滚轮向上滚动1格脚本例子: (7.x语法) 复制代码1.//如果滚动量为正,向上滚动;否则向下滚动.2.//仅支持Windows 2000以上的操作系统.3.MouseWheel 14.//把鼠标滚轮向上滚动1格命令名称:MoveR 鼠标相对移动命令功能:鼠标相对移动到命令参数:参数1 整数型,X距离参数2 整数型,Y距离返回值:无脚本例子:(8.x语法) 复制代码1.//MoveR、MoveRS、MoveRH2.//MoveRS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//MoveRH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.//当前鼠标在(100,100)点,使用下面语句5.MoveR 200,3006.//之后,鼠标就被移到了(100+200,100+300)处,也就是坐标(300,400)处7.//提示:使用硬件模拟方式不能碰键盘鼠标,否则会导致出错脚本例子: (7.x语法) 复制代码1.//MoveR、MoveRS、MoveRH2.//MoveRS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//MoveRH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.//当前鼠标在(100,100)点,使用下面语句5.MoveR 200,3006.//之后,鼠标就被移到了(100+200,100+300)处,也就是坐标(300,400)处7.//提示:使用硬件模拟方式不能碰键盘鼠标,否则会导致出错命令名称:MoveTo 鼠标移动命令功能:移动鼠标到命令参数:参数1 整数型,X坐标参数2 整数型,Y坐标返回值:无脚本例子:(8.x语法) 复制代码1.//MoveTo、MoveToS、MoveToH2.//MoveToS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//MoveToH: 硬件模拟方式,仅支持PS(圆口)的鼠标4.MoveTo 100,2005.//把鼠标移动到(100,200)这个点上6.intX=507.intY=1508.MoveTo intX,intY9.//把鼠标移动到(intX,intY)这个点上,需要5.50以上版本支持.脚本例子: (7.x语法) 复制代码1.//MoveTo、MoveToS、MoveToH2.//MoveToS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//MoveToH: 硬件模拟方式,仅支持PS(圆口)的鼠标4.MoveTo 100,2005.//把鼠标移动到(100,200)这个点上6.intX=507.intY=1508.MoveTo intX,intY9.//把鼠标移动到(intX,intY)这个点上,需要5.50以上版本支持.命令名称:RestoreMousePos 恢复上次保存的鼠标位置命令功能:保存当前鼠标位置命令参数:无返回值:无脚本例子:(8.x语复制代码法) 1.SaveMousePos2.//保存当前鼠标位置3.Delay 1004.MoveTo 500,205.Delay 1006.RestoreMousePos7.//将鼠标移动到上一次保存的鼠标位置8.//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,9.//这样脚本执行后鼠标的位置就不会变化脚本例子: (7.x语法) 复制代码1.SaveMousePos2.//保存当前鼠标位置3.Delay 1004.MoveTo 500,205.Delay 1006.RestoreMousePos7.//将鼠标移动到上一次保存的鼠标位置8.//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,9.这样脚本执行后鼠标的位置就不会变化命令名称:RightClick 右键单击命令功能:模拟点击鼠标右键命令参数:参数1 整数型,次数返回值:无脚本例子:(8.x语法) 复制代码1.//RightClick、RightClickS、RightClickH2.//RightClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//RightClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.RightClick 55.//在当前鼠标的位置单击鼠标右键5次脚本例子: (7.x语法) 复制代码1.//RightClick、RightClickS、RightClickH2.//RightClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//RightClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.RightClick 55.//在当前鼠标的位置单击鼠标右键5次命令名称:SaveMousePos 保存当前鼠标所在位置命令功能:保存当前鼠标位置命令参数:无返回值:无脚本例子:(8.x语法) 复制代码1.SaveMousePos2.//保存当前鼠标位置3.Delay 1004.MoveTo 500,205.Delay 1006.RestoreMousePos7.//将鼠标移动到上一次保存的鼠标位置8.//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,9.//这样脚本执行后鼠标的位置就不会变化脚本例子: (7.x语法) 复制代码1.SaveMousePos2.//保存当前鼠标位置3.Delay 1004.MoveTo 500,205.Delay 1006.RestoreMousePos7.//将鼠标移动到上一次保存的鼠标位置8.//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,9.这样脚本执行后鼠标的位置就不会变化命令名称:UnlockMouse 解除锁定鼠标位置命令功能:解除LockMouse命令对鼠标位置的锁定命令参数:无返回值:无脚本例子:(8.x语法) 复制代码1.脚本例子: (7.x语法) 复制代码1.//如果用户使用了LockMouse命令而没有使用UnlockMouse命令,按键精灵会在脚本结束时自动解除锁定2.UnlockMouse命令名称:WaitClick 按任意鼠标键继续命令功能:脚本执行到这一句暂停,按下任意鼠标键之后继续命令参数:参数1 整数型,可选:变量名返回值:无脚本例子:(8.x语法) 复制代码st_click=WaitClick()2.MessageBox "您按下了" & last_click脚本例子: (7.x语法) 复制代码1.WaitClick last_click2.MessageBox "您按下了" & last_click三、控制命令命令名称:Call 调用过程命令功能:调用过程命令参数:参数1 字符串型,过程名返回值:无脚本例子:(8.x语法) 复制代码1.Call子程序("我是子程序,被你调用了")2.EndScript3.//支持中文名变量4.Sub子程序(啊)5. Msgbox 啊6.End Sub7.//定义一个过程,可以在脚本中调用这个过程脚本例子: (7.x语法) 复制代码命令名称:Do 循环命令功能:条件循环命令参数:参数1 条件型,循环条件返回值:无脚本例子:(8.x语法) 复制代码1.例子1:2.//支持Exit Do 命令退出循环3.i=04.Do While i=05. Msgbox "我停不下来啦!!快住手"6.Loop7.//当循环条件成立的时候,反复执行循环体8.9.10.例子2:11.i=012.Do Until i=013. Msgbox "为什么没有循环到我呢?"14.Loop15.Msgbox "循环结束"16.//当循环条件成立的时候,离开循环体17.18.19.例子3:20.i=021.Do Until i=122. Msgbox "我停不下来啦!!快住手"23.Loop24.//当循环条件不成立的时候,反复执行循环体25.26.27.例子4:28.n=029.Do While true30. Msgbox "我将循环10次停下来!!"31.If n>=10 Then32. //当循环条件成立的时候,离开循环体33.Exit do34.End if35. n=n+136.Loop37.Msgbox n & "次"38.39.40.例子5:41.i = 042.Do43. MessageBox "ok"44.Loop While i <> 045.//条件放后面,前面的循环内容可以执行一次!脚本例子: (7.x语法) 复制代码1.无命令名称:For 循环命令功能:循环一定次数命令参数:参数1 整数型,循环次数返回值:无脚本例子:(8.x语法) 复制代码1.例子1:2.//支持Exit For 命令退出循环3.For i=0 To 94.Delay 1005.Next6.//循环10次7.8.例子2:9.//支持Exit For 命令退出循环10.For 1011.Delay 10012.Next13.//循环10次14.15.16.例子3:17.//支持Exit For 命令退出循环18.For i=0 to 19 step 219.Delay 10020.Next21.//循环10次22.23.例子4:24.//支持Exit For 命令退出循环25.For i=0 to 19 step 226.Delay 10027.If i>9 Then28.Exit For29.End If30.Next31.//循环5次脚本例子: (7.x语法) 复制代码1.For 102.Delay 1003.EndFor4.//循环10次命令名称:Function 函数命令功能:函数命令参数:多类型,多参数返回值:多类型脚本例子:(8.x语法) 复制代码1.//支持Exit Function 命令退出函数过程2.Msgbox 函数过程("我是函数,被你调用了")3.EndScript4.Function函数过程(a)5.函数过程=a6.End Function7.//定义一个函数过程,可以在脚本中调用这个函数脚本例子: (7.x语法) 复制代码1.无命令名称:Gosub 调用子程序命令功能:调用过程命令参数:参数1 字符串型,过程名返回值:无脚本例子:(8.x语法) 复制代码1.//可带参数传递2.Call子程序("我是子程序,被你调用了")3.EndScript4.Sub子程序(a)5. Msgbox a6.End Sub7.//定义一个过程,可以在脚本中调用这个过程脚本例子: (7.x语法) 复制代码1.Gosub子程序2.EndScript3.Sub子程序4. Msgbox "我是子程序,被你调用了"5.Return子程序6.//定义一个过程,可以在脚本中调用这个过程命令名称:Goto 跳转到标记命令功能:跳转到Rem标记处命令参数:参数1 字符串型,标号返回值:无脚本例子:(8.x语法) 复制代码1.Goto标记2.Delay 1003.Rem标记4.Msgbox "你直接跳到这里了!!,上面的延迟没有被执行!!"5.//跳转语句,可以跳转到rem标记过的标记处继续执行脚本例子: (7.x语法) 复制代码1.Goto标记2.Delay 1003.Rem标记4.Msgbox "你直接跳到这里了!!,上面的延迟没有被执行!!"5.//跳转语句,可以跳转到rem标记过的标记处继续执行命令名称:If 如果..则命令功能:判断表达式命令参数:参数1 条件型,表达式返回值:无脚本例子:(8.x语法) 复制代码1.例子1:2.i=03.If i=0 Then4. Msgbox "条件判断符合被通过!!"5.End If6.//通过判断表达式的取值,来执行后面的动作或控制7.8.例子2:9.i=110.If i=0 Then11. Msgbox "条件判断符合被通过!!"12.ElseIf i=1 Then13. Msgbox "否则条件判断符合被通过!!"14.Else15. Msgbox "否则!!"16.End If17.//通过判断表达式的取值,来执行后面的动作或控制脚本例子: (7.x语法) 复制代码1.i=02.If i=03. Msgbox "条件判断符合被通过!!"4.EndIf5.//通过判断表达式的取值,来执行后面的动作或控命令名称:IfColor 颜色判断命令功能:判断屏幕某点的颜色命令参数:参数1 整数型,屏幕X坐标参数2 整数型,屏幕Y坐标参数3字符串型,颜色16进制值参数4 整数型,判断条件返回值:无脚本例子:(8.x语法) 复制代码1.例子1:2.//判断条件(0:等于 1:不等于 2:近似等于)3.IfColor 860,27,"e1b072",0 Then4. Msgbox "颜色等于"5.Else6. Msgbox "颜色不等于"7.End If8.//判断坐标点(860,27)的颜色是否等于e1b0729.10.11.例子2:12.a=1:b=113.IfColor 650,118,"78F0E8",2 Then14. MessageBox "a"15.ElseIf b=a Then16. MessageBox "b"17.End if脚本例子: (7.x语法) 复制代码1.//判断条件(0:等于 1:不等于 2:近似等于)2.IfColor 860,27,e1b072,03. Msgbox "颜色等于"4.Else5. Msgbox "颜色不等于"6.EndIf7.//判断坐标点(860,27)的颜色是否等于e1b072命令名称:Rem 标记/注释命令功能:标记命令可当注释命令参数:参数1 字符串型,文字返回值:无脚本例子:(8.x语法) 复制代码1.//不支持数字开头的和符号作为标记名2.//标记命令.即可当注释,也可以为Goto跳转指令作标记3.Rem脚本开始脚本例子:(7.x语法) 复制代码1.//标记命令.即可当注释,也可以为Goto跳转指令作标记2.Rem脚本开始命令名称:RestartScript 重新启动脚本运行命令功能:重新启动脚本运行命令参数:无返回值:无脚本例子:(8.x语法) 复制代码1.For i=0 to 22.Delay 10003.Call Plugin.Msg.ShowScrTXT(0, 0, 1024, 768, "屏幕内容填写" & i, "0000FF")4.Next5.RestartScript //重新启动脚本运行脚本例子:(7.x语法) 复制代码1.无命令名称:Select 情况条件选择命令功能:根据情况选择条件判断命令参数:参数1 条件型,情况返回值:无脚本例子:(8.x语法) 复制代码1.//不支持判断语句如:Case a>0erVar 变量=0 "输入(0~9)数字"3.//<>---------------------------------------------以下是选择条件结结构判断4.Select Case变量5.Case 06. Msgbox "你输入的数字为:0"7.Case 18. Msgbox "你输入的数字为:1"9.Case 210. Msgbox "你输入的数字为:2"11.Case 312. Msgbox "你输入的数字为:3"13.Case 414. Msgbox "你输入的数字为:4"15.Case 516. Msgbox "你输入的数字为:5"17.Case 618. Msgbox "你输入的数字为:6"19.Case 720. Msgbox "你输入的数字为:7"21.Case 822. Msgbox "你输入的数字为:8"23.Case 924. Msgbox "你输入的数字为:9"25.Case Else26. Msgbox "你输入的数字不正确,请输入(0~9)数字!"27.End Select脚本例子:复制代码(7.x语法)1.无命令名称:Sub 子程序命令功能:定义一个过程命令参数:参数1 字符串型,过程名返回值:无脚本例子:(8.x语法) 复制代码1.//支持Exit Sub 命令退出子程序过程2.Call子程序()3.EndScript4.Sub子程序()5. Msgbox "我是子程序,被你调用了"6.End Sub7.//定义一个过程,可以在脚本中调用这个过程脚本例子:(7.x语法) 复制代码1.Gosub子程序2.EndScript3.Sub子程序4. Msgbox "我是子程序,被你调用了"5.Return子程序6.//定义一个过程,可以在脚本中调用这个过程命令名称:While 如果..则循环命令功能:条件循环命令参数:参数1 条件型,循环条件返回值:无脚本例子:(8.x语法) 复制代码1.i=02.While i=03. Msgbox "我停不下来啦!!快住手"4.Wend5.//当循环条件成立的时候,反复执行循环体脚本例子:(7.x语法) 复制代码1.i=02.While i=03. Msgbox "我停不下来啦!!快住手"4.EndWhile5.//当循环条件成立的时候,反复执行循环体四、颜色/图像命令命令名称:FindCenterColor 中心找色命令功能:在屏幕区域从中心开始查找指定的颜色命令参数:参数1 整数型,屏幕左上角x坐标参数2 整数型,屏幕左上角y坐标参数3 整数型,屏幕右下角x坐标参数4 整数型,屏幕右下角y坐标参数5 字符串型,16进制颜色值参数6 整数型,返回x坐标参数7 整数型,返回y 坐标返回值:无脚本例子:(8.x语法) 复制代码1.//FindCenterColor left,top,right,bottom,c,x,y2.//在区域内从中心到外围找颜色为c的点,把坐标保存在变量x和y中3.//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,下界限4.//颜色是类似于"0000FF"的字符串,如果不取变量,别忘了加双引号5.//如果没有找到这个颜色,则x和y的值都被置为-16.FindCenterColor 0,0,800,600,"0000FF",x,y7.If x>0 and y>0 Then8. MoveTo x,y9.End If10.//在区域(0,0,800,600)中找红色("0000FF")的点,如果找到,则把鼠标移动到这个点脚本例子:(7.x语法) 复制代码1.//VBSCall FindCenterColor(left,top,right,bottom,c,x,y)2.//在区域内从中心到外围找颜色为c的点,把坐标保存在变量x和y中3.//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,下界限4.//颜色是类似于"0000FF"的字符串,如果不取变量,别忘了加双引号5.//如果没有找到这个颜色,则x和y的值都被置为-16.VBSCall FindCenterColor(0,0,800,600,"0000FF",x,y)7.If x>0 and y>08. MoveTo x,y9.EndIf10.//在区域(0,0,800,600)中找红色("0000FF")的点,如果找到,则把鼠标移动到这个点命令名称:FindColor 找色命令功能:在屏幕区域从左到右、从上到下的查找指定的颜色命令参数:参数1 整数型,屏幕左上角x坐标参数2 整数型,屏幕左上角y坐标参数3 整数型,屏幕右下角x坐标参数4 整数型,屏幕右下角y坐标参数5 字符串型,16进制颜色值参数6 整数型,返回x坐标参数7 整数型,返回y 坐标返回值:无脚本例子:(8.x语法) 复制代码1.//FindColor left,top,right,bottom,c,x,y2.//在区域内从左到右,从上到下找颜色为c的点,把坐标保存在变量x和y中3.//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,下界限4.//颜色是类似于"0000FF"的字符串,如果不取变量,别忘了加双引号5.//如果没有找到这个颜色,则x和y的值都被置为-16.FindColor 0,0,800,600,"0000FF",x,y7.If x>0 and y>0 Then8. MoveTo x,y9.End If10.//在区域(0,0,800,600)中找红色("0000FF")的点,如果找到,则把鼠标移动到这个点脚本例子:(7.x语法) 复制代码1.//VBSCall FindColor(left,top,right,bottom,c,x,y)2.//在区域内从左到右,从上到下找颜色为c的点,把坐标保存在变量x和y中3.//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,下界限4.//颜色是类似于"0000FF"的字符串,如果不取变量,别忘了加双引号5.//如果没有找到这个颜色,则x和y的值都被置为-16.VBSCall FindColor(0,0,800,600,"0000FF",x,y)7.If x>0 and y>08. MoveTo x,y9.EndIf10.//在区域(0,0,800,600)中找红色("0000FF")的点,如果找到,则把鼠标移动到这个点命令名称:FindColorEx 模糊找色命令功能:在屏幕区域模糊查找指定的颜色命令参数:参数1 整数型,屏幕左上角x坐标参数2 整数型,屏幕左上角y坐标参数3 整数型,屏幕右下角x坐标参数4 整数型,屏幕右下角y坐标参数5 字符串型,16进制颜色值参数6 整数型,查找方式参数7 整数型,相似度参数8 整数型,返回x坐标参数9 整数型,返回y坐标返回值:无脚本例子:复制代码1.//FindColorEx left,top,right,bottom,c,type,similar,x,y2.//在区域内找颜色为c的点,把坐标保存在变量x和y中。
游戏辅助制作教程——如何使用按键精灵脚本自动间隔时间释放辅助技能
游戏辅助制作教程——如何使用按键精灵脚本自动间隔时间释放辅助技能脚本使用说明:1.按键精灵脚本可应用于各种网络游戏,用于自动间隔时间使用辅助技能,可自定义三个技能和间隔时间。
2.脚本开始运行前请先在按键精灵主界面上设置自定义参数,修改后点击上方的“保存〞按钮。
3.可定义辅助技能热键:数字0~9、字母A~Z、F1~F12 ,设置技能时字母可不分大小写。
4.如果辅助技能是F1~F12,比如技能是F12,自定义参数设置的输入格式:f12或F125.输入间隔时间单位为"秒",比如间隔180秒,自定义参数的输入格式:1806.如果在自定义设置中输入的数据错误,脚本将提示并停止运行。
>>具体脚本代码如下:UserVar jn1=a 设置技能1键位UserVar jn2=2 设置技能2键位UserVar jn3=F11 设置技能3键位UserVar s1=60 设置技能1施放间隔时间UserVar s2=90 设置技能2施放间隔时间UserVar s3=120 设置技能3施放间隔时间//----------------------------------------------------------------------- //---------------------------------------------------------[赋值初始变量] //----------------------------------------------------------------------- dim number(2),thetime(2),key(2),sj(2)dim a,b,c,d,jn1,jn2,jn3,s1,s2,s3,t1,t2,t3,L//声明变量number(0)=jn1:number(1)=jn2:number(2)=jn3thetime(0)=s1:thetime(1)=s2:thetime(2)=s3//把自定义参数的返回值转换成数组元素t1=now:t2=now:t3=now//返回当前系统日期时间到变量//----------------------------------------------------------------------- //---------------------------------------------------------- [跳转子程序] //----------------------------------------------------------------------- Gosub 判断按键Gosub 判断时间//-----------------------------------------------------------------------//---------------------------------------------------------- [脚本主程序]//-----------------------------------------------------------------------While true//条件无限循环If DateDiff("s",t1,now)>=sj(0)//< DateDiff 函数:返回两个日期之间的时间间隔>//<"s":秒> <t1:时间变量> <now:当前系统日期和时间> <s(0):自定义时间变量>Delay 10KeyPress key(0) 1//按键变量k(0) 1次t1=now//重新赋值日期时间到变量EndIfIf DateDiff("s",t2,now)>=sj(1)Delay 10KeyPress key(1) 1t2=nowEndIfIf DateDiff("s",t3,now)>=sj(2)Delay 10KeyPress key(2) 1t3=nowEndIfDelay 10EndWhile//-----------------------------------------------------------------------//------------------------------------------------------ [判断键码子程序]//-----------------------------------------------------------------------Sub 判断按键a=0:b=0//赋值数组最小下标For 3L=Len(number(a))//< Len 函数:返回字符串内字符的数量>If L=1key(b)=Asc(UCase(number(a)))//< Asc 函数:返回字符串首字母的ASCII字符代码> < UCase 函数:返回转换为大写字母的字符>If key(b)<48 or key(b)>90Goto End//超出X围跳转到脚本结束标记ElseIf key(b)>57 and key(b)<65Goto EndEndIfElseIf L>1 and L<4If UCase(Left(number(a),1))="F"//判断字符串首字字符< Left 函数:返回字符串最左边的指定数量的字符>key(b)=Asc(UCase(Left(number(a),1)))+Right(number(a),L-1)+41//< Right 函数:返回字符串最右边的指定数量的字符>If key(b)<112 or key(b)>123Goto EndEndIfElseGoto EndEndIfElseGoto EndEndIfa=a+1:b=b+1//数组下标+1Delay 10EndForReturn 判断按键//-----------------------------------------------------------------------//------------------------------------------------------ [判断时间子程序]//----------------------------------------------------------------------- Sub 判断时间c=0:d=0For 3If IsNumeric(thetime(c))=True//< IsNumeric 函数:返回布尔值指明表达式的值是否为数字>sj(d)=cint(thetime(c))/< CInt 函数:返回已被转换为整形子类型的变体的表达式> ElseGoto EndEndIfc=c+1:d=d+1Delay 10EndForReturn 判断时间//-----------------------------------------------------------------------//-------------------------------------------------------- [脚本停止标记]//----------------------------------------------------------------------- Rem EndMessageBox 输入错误脚本停止运行EndScript。
能真正后台运行的按键精灵代码支持最小化和切换窗口
能真正后台运行的按键精灵代码支持最小化和切换窗口能真正后台运行的按键精灵代码是附2,详细应用是附3.均可直接复制使用.主题:按键精灵切换窗口最小化后台运行游戏1、游戏句柄后台的意思就是当窗口被遮盖或移开的时候,仍能够正常的执行脚本动作,所以必须先找到该游戏的窗口句柄,这样可以保证我们编辑的脚本语句有正确的使用方向,获取窗口句柄的方法有很多,我一般使用以下的方法:Dim hwndPlugin hwnd=Window.MousePoint()Plugin是调用插件命令,凡是调用插件都需要使用这个命令,hwnd就是得到的句柄,Window是插件的名称MousePoint()返回鼠标所在的窗口的句柄关于窗口这里需要多说几句,以网页游戏为例,鼠标放在标题栏上和放在游戏窗口所得到的句柄是不一样的,游戏窗口是IE的一个子窗口,因此在运行脚本前,将你的鼠标放在游戏窗口的区域内再运行脚本。
得到句柄费函数很多,有兴趣的自己去试试看,不过知道一个就足够了。
2、模拟动作得到窗口句柄后,你就可以向这个窗口模拟需要的动作了,在这里要用到按键精灵7的插件(既然已经有7了以前的插件就不作介绍了),模拟动作的函数有如下几个-模拟鼠标点击Plugin Bkgnd.LeftClick(句柄,横坐标,纵坐标) //模拟鼠标左键点击Plugin Bkgnd.RightClick(句柄,横坐标,纵坐标) //模拟鼠标右键点击其中的句柄就是上面我们已经得到的句柄,这里的横坐标和纵坐标是针对游戏窗口,而不是针对屏幕的(看晕了吧^_^关于这一点足足困扰了我一个礼拜的时间才弄明白)。
屏幕坐标,是以屏幕左上角为基点(0,0),右下角的坐标是和屏幕分辨率有关的,而窗口坐标,不是在屏幕的左上角,例如word中的编辑窗口的0,0位置是在工具栏下面的,看不懂也没关系,你只要记住下面的方法就行了,首先在得到窗口句柄后加上如下的代码:Plugin s = Window.GetClientRect(hwnd)XYArray = Split(s, "|", -1, 1)dx = XYArray(0)dy = XYarray(1)其次,在横坐标和纵坐标的后面都分别减去dx和dy就行了,为什么!!不用去管他,反正这样做不会错,举例说明例如你抓点得到的横坐标是x,纵坐标是y,那么模拟鼠标左键点击的语句应该是这样的:Plugin Bkgnd.LeftClick(句柄x-dx,y-dy)-模拟键盘动作Plugin Bkgnd.KeyPress(句柄,按键码) //模拟键盘动作这里的按键码可以很容易的在按键精灵中查到,包括组合键-输入字符串Plugin Window.SendString(句柄,字符串)这个函数在登陆和喊话时是非常有用的,其中的字符串可以是字符串变量3、后台找色后台脚本尽量少用找色语句,否则你的游戏将“卡巴死机”,即使少用也会出现很多的“马赛克”幸运的是不影响找色功能,即使游戏图像已经乱七八糟,既然是要后台操作,难看就难看吧^_^。
易语言仿按键精灵录制键盘鼠标操作的代码
易语⾔仿按键精灵录制键盘⿏标操作的代码DLL命令表.版本 2.DLL命令取按键状态, 短整数型, "user32.dll", "GetAsyncKeyState".参数⿏标键, 整数型.DLL命令取⿏标位置, 整数型, "user32.dll", "GetCursorPos".参数当前⿏标位置, ⿏标位置, 传址.DLL命令模拟⿏标按键, , , "mouse_event".参数⿏标动作, 整数型.参数⽔平位置, 整数型.参数垂直位置, 整数型.参数⿏标按键, 整数型.参数扩展信息, 整数型.DLL命令模拟键盘按键, , , "keybd_event".参数 bVk, 字节型.参数 bScan, 字节型.参数 dwFlags, 整数型.参数 dwExtraInfo, 整数型⾃定义数据类型.版本 2.数据类型⿏标位置.成员横向坐标, 整数型.成员纵向坐标, 整数型.数据类型按键记录, , 记录长度13个字节..成员时间间隔, 整数型.成员键值, 字节型, , , 0,⿏标移动;其他为键盘键值.成员键盘动作, 整数型, , , 或者是⿏标⽔平位置.成员垂直位置, 整数型, , , ⿏标垂直位置⿏标键盘录制的代码.版本 2.程序集程序集_主窗⼝.程序集变量按键状态, 整数型, , "256".程序集变量时间线, 整数型.程序集变量⿏标前次位置, ⿏标位置.程序集变量操作记录, 按键记录, , "92000".程序集变量缓冲区记录数, ⽂本型.程序集变量当前记录, 整数型.程序集变量可否中断, 逻辑型.程序集变量屏幕宽度, 整数型.程序集变量屏幕⾼度, 整数型.程序集变量停⽌回放, 逻辑型.⼦程序判断按键.参数键值, 字节型.参数当前状态, 整数型.判断开始 (当前状态= 0).如果真 (按键状态 [键值+ 1] ≠ 0)添加记录 (键值, #键抬起, 0).如果真结束.判断 (当前状态 ≠ 0).如果 (键值= #F3键)可否中断=真返回 ().否则.如果结束.如果真 (按键状态 [键值+ 1] = 0)添加记录 (键值, #键按下, 0).如果真结束.默认.判断结束按键状态 [键值+ 1] =当前状态.⼦程序添加记录.参数键值, 字节型, , 为0表⽰⿏标移动,其他表⽰按键.参数键盘动作, 整数型, , 或 “⽔平位置”,传⼊的双精度数.参数垂直位置, 整数型当前记录=当前记录+ 1.如果 (当前记录>取数组成员数 (操作记录))返回 ().否则.如果结束操作记录 [当前记录].时间间隔=取启动时间 () -时间线操作记录 [当前记录].键值=键值操作记录 [当前记录].键盘动作=键盘动作操作记录 [当前记录].垂直位置=垂直位置标签_录制进程.标题=到⽂本 (当前记录) + “ / ” +缓冲区记录数.⼦程序 _按钮_记录_被单击.局部变量键值, 整数型.局部变量⿏标当前位置, ⿏标位置.局部变量⿏标动作, 整数型.局部变量脚本⽂件号, 整数型.局部变量记录数, 整数型.局部变量脚本⽂件名, ⽂本型按钮_记录.禁⽌=真按钮_回放.禁⽌=真按钮_停⽌.禁⽌=假.如果真 (选择框_最⼩化.选中)位置= 2.如果真结束时钟_热键.时钟周期= 0 ' 关闭 “记录” 热键.计次循环⾸ (256, 键值) ' 初始化按键状态取按键状态 (键值- 1)按键状态 [键值] = 0.计次循环尾 ()屏幕宽度=取屏幕宽度 () ' 为获取⿏标坐标作准备屏幕⾼度=取屏幕⾼度 ()当前记录= 0时间线=取启动时间 ()可否中断=假 ' 开始记录.判断循环⾸ (可否中断=假)取⿏标位置 (⿏标当前位置).如果真 (⿏标前次位置.横向坐标 ≠ ⿏标当前位置.横向坐标或⿏标前次位置.纵向坐标 ≠ ⿏标当前位置.纵向坐标)⿏标前次位置=⿏标当前位置添加记录 (0, ⿏标当前位置.横向坐标 × 65535 \屏幕宽度, ⿏标当前位置.纵向坐标 × 65535 \屏幕⾼度).如果真结束.变量循环⾸ (146, 255, 1, 键值) ' 先检查额外按键信息。
按键精灵脚本编写命令大全及示例
按键精灵学习教程一、键盘命令(2~5页)二、鼠标命令(5~13页)三、控制命令(13~22页)四、颜色/图像命令(22~28页)五、其他命令(28~35页)五、网游脚本实例(35~最后)一、键盘命令命令名称:GetLastKey检测上次按键命令功能:检测上次按键命令参数:参数1整数型,可选:变量名返回值:无脚本例子:(8.x语法)?? 复制代码1.//脚本运行到这一行不会暂停,调用的时候立即返回,得到调用之前最后一次按下的按键码保存在变量Key里。
??2.Key=GetLastKey()???3.If?Key?=?13?Then???4.????Msgbox?"你上次按下了回车键"??5.End?If??脚本例子:(7.x语法)?? 复制代码1.//脚本运行到这一行不会暂停,调用的时候立即返回,得到调用之前最后一次按下的按键码保存在变量Key里。
??2.GetLastKey?Key??3.If?Key?=?13??4.????Msgbox?"你上次按下了回车键"??5.EndIf??命令名称:KeyDown按住命令功能:键盘按住命令参数:参数1整数型,键盘虚拟码(8.X支持按键字符)参数2整数型,次数返回值:无脚本例子:(8.x语法)?? 复制代码1.//KeyDown、KeyDownS、KeyDownH??2.//KeyDownS:?超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用??3.//KeyDownH:?硬件模拟方式,仅支持PS(圆口)的键盘?点击查看使用硬件模拟方式的注意事项??4.KeyDown?65,1??5.//65是A键的按键码,上面的语句表示按住A键1次??6.KeyDown?"A",1??7.//上面的支持按键字符,语句表示按住A键1次??脚本例子:(7.x语法)?? 复制代码1.//KeyDown、KeyDownS、KeyDownH??2.//KeyDownS:?超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用??3.//KeyDownH:?硬件模拟方式,仅支持PS(圆口)的键盘?点击查看使用硬件模拟方式的注意事项??4.KeyDown?65,1??5.//65是A键的按键码,上面的语句表示按住A键1次?命令名称:KeyPress按键命令功能:键盘按键命令参数:参数1整数型,键盘虚拟码(8.X支持按键字符)参数2整数型,次数返回值:无脚本例子:(8.x语法)?? 复制代码1.//KeyPress、KeyPressS、KeyPressH??2.//KeyPressS:?超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用??3.//KeyPressH:?硬件模拟方式,仅支持PS(圆口)的键盘?点击查看使用硬件模拟方式的注意事项??4.KeyPress?65,1??5.//65是A键的按键码,上面的语句表示按A键1次??6.KeyPress?"A",1??7.//上面的支持按键字符,语句表示按A键1次??脚本例子:(7.x语法)?? 复制代码1.//KeyPress、KeyPressS、KeyPressH??2.//KeyPressS:?超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用??3.//KeyPressH:?硬件模拟方式,仅支持PS(圆口)的键盘?点击查看使用硬件模拟方式的注意事项??4.KeyPress?65,1??5.//65是A键的按键码,上面的语句表示按A键1次??命令名称:KeyUp弹起命令功能:键盘弹起命令参数:参数1整数型,键盘虚拟码(8.X支持按键字符)参数2整数型,次数返回值:无脚本例子:(8.x语法)?? 复制代码1.//KeyUp、KeyUpS、KeyUpH??2.//KeyUpS:?超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用??3.//KeyUpH:?硬件模拟方式,仅支持PS(圆口)的键盘?点击查看使用硬件模拟方式的注意事项??4.KeyUp?65,1??5.//65是A键的按键码,上面的语句表示松开A键1次??6.KeyUp?"A",1??7.//上面的支持按键字符,语句表示松开A键1次??脚本例子:(7.x语法)?? 复制代码1.//KeyUp、KeyUpS、KeyUpH??2.//KeyUpS:?超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用??3.//KeyUpH:?硬件模拟方式,仅支持PS(圆口)的键盘?点击查看使用硬件模拟方式的注意事项??4.KeyUp?65,1??5.//65是A键的按键码,上面的语句表示松开A键1次??命令名称:WaitKey等待按任意键命令功能:等待按任意键命令参数:参数1整数型,可选:变量名返回值:无脚本例子:(8.x语法)?? 复制代码1.Key=WaitKey()???2.//脚本运行到这一行会暂停,当用户按下键盘后继续执行,并且把用户的按键码保存在变量Key里??3.If?Key?=?13?Then???4.????MessageBox?"恭喜你按下了回车键"??5.End?If??脚本例子:(7.x语法)?? 复制代码1.WaitKey?Key??2.//脚本运行到这一行会暂停,当用户按下键盘后继续执行,并且把用户的按键码保存在变量Key里??3.If?Key?=?13??4.????Msgbox?"恭喜你按下了回车键"??5.EndIf??二、鼠标命令命令名称:GetCursorPos得到鼠标位置坐标命令功能:得到当前鼠标所在的位置坐标命令参数:参数1整数型,返回x坐标参数2整数型,返回y坐标返回值:无脚本例子:(8.x语法)?? 复制代码1.GetCursorPos?mx,my??2.//把当前鼠标位置的x和y坐标放在变量mx和my中??脚本例子:(7.x语法)?? 复制代码1.VBSCall?GetCursorPos(mx,my)???2.//把当前鼠标位置的x和y坐标放在变量mx和my中??命令名称:GetCursorShape得到鼠标形状命令功能:得到当前鼠标的形状特征命令参数:参数1整数型,参数返回值:整数型,鼠标的形状值脚本例子:(8.x语法)?? 复制代码1.//参数:?0?是6.83之前的版本默认的参数??2.//参数:?1?可用于一些在参数0下无法区分鼠标形状代码的情况??3.//下面是我们普通的WINDOWS鼠标形状特征??4.//不同电脑上鼠标形状特征也许不同,请使用"抓点抓色"功能抓取正确的鼠标形状特征??5.??6.//下面是我们访问网页超链接时候的手型鼠标形状??7.??8.shape=GetCursorShape(0)??9.If?shape?=?shape1?Then???10.????MessageBox?"当前鼠标形状是普通的WINDOWS鼠标"??11.ElseIf?shape?=?shape2?Then???12.????MessageBox?"当前鼠标形状是手型鼠标"??13.Else???14.????MessageBox?"不认识当前鼠标形状!"??15.End?If??脚本例子:(7.x语法)?? 复制代码1.//参数:?0?是6.83之前的版本默认的参数??2.//参数:?1?可用于一些在参数0下无法区分鼠标形状代码的情况??3.//下面是我们普通的WINDOWS鼠标形状特征??4.//不同电脑上鼠标形状特征也许不同,请使用"抓点抓色"功能抓取正确的鼠标形状特征??5.??6.//下面是我们访问网页超链接时候的手型鼠标形状??7.??8.VBSCall?Shape=GetCursorShape(0)??9.If?shape?=?shape1??10.????MessageBox?当前鼠标形状是普通的WINDOWS鼠标??11.ElseIf?shape?=?shape2??12.????MessageBox?当前鼠标形状是手型鼠标??13.Else???14.????MessageBox?不认识当前鼠标形状!??15.EndIf???命令名称:GetLastClick检测上次按过的鼠标键命令功能:检测上一次按下的鼠标代码命令参数:参数1整数型,可选:变量名返回值:无脚本例子:(8.x语法)?? 复制代码1.Mouse=GetLastClick()???2.If?Mouse?=32770?Or?Mouse?=32769?Then???3.????Msgbox?"你按下了鼠标左键"??4.End?If??脚本例子:(7.x语法)?? 复制代码1.GetLastClick?Mouse??2.If?Mouse?=32770?Or?Mouse?=32769???3.????Msgbox?"你按下了鼠标左键"??4.EndIf??命令名称:LeftClick左键单击命令功能:模拟点击鼠标左键命令参数:参数1整数型,次数返回值:无脚本例子:(8.x语法)?? 复制代码1.//LeftClick、LeftClickS、LeftClickH??2.//LeftClickS:?超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用??3.//LeftClickH:?硬件模拟方式,仅支持PS(圆口)的鼠标?点击查看使用硬件模拟方式的注意事项??4.LeftClick?5??5.//在当前鼠标的位置单击鼠标左键5次??脚本例子:(7.x语法)?? 复制代码1.//LeftClick、LeftClickS、LeftClickH??2.//LeftClickS:?超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用??3.//LeftClickH:?硬件模拟方式,仅支持PS(圆口)的鼠标?点击查看使用硬件模拟方式的注意事项??4.LeftClick?5??5.//在当前鼠标的位置单击鼠标左键5次??命令名称:LeftDoubleClick左键双击命令功能:模拟双击鼠标左键命令参数:参数1整数型,次数返回值:无脚本例子:(8.x语法)?? 复制代码1.//LeftDoubleClick、LeftDoubleClickS、LeftDoubleClickH]??2.//LeftDoubleClickS:?超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用??3.//LeftDoubleClickH:?硬件模拟方式,仅支持PS(圆口)的鼠标?点击查看使用硬件模拟方式的注意事项??4.LeftDoubleClick?5??5.//在当前鼠标的位置双击鼠标左键5次??脚本例子:(7.x语法)?? 复制代码1.//LeftDoubleClick、LeftDoubleClickS、LeftDoubleClickH]??2.//LeftDoubleClickS:?超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用??3.//LeftDoubleClickH:?硬件模拟方式,仅支持PS(圆口)的鼠标?点击查看使用硬件模拟方式的注意事项??4.LeftDoubleClick?5??5.//在当前鼠标的位置双击鼠标左键5次??命令名称:LockMouse锁定鼠标位置命令功能:锁定鼠标位置,用户将不能通过移动鼠标而改变鼠标位置,而脚本仍可以改变鼠标位置命令参数:无返回值:无脚本例子:(8.x语法)?? 复制代码1.//在脚本开始的时候使用这个命令,可以有效防止用户误触鼠标引起脚本执行出错??2.LockMouse??3.Do??4.????Delay?1000??5.Loop??脚本例子:(7.x语法)?? 复制代码1.//在脚本开始的时候使用这个命令,可以有效防止用户误触鼠标引起脚本执行出错??2.LockMouse??3.While?True??4.????Delay?1000??5.EndWhile??命令名称:MiddleClick中键单击命令功能:模拟点击鼠标中键命令参数:参数1整数型,次数返回值:无脚本例子:(8.x语法)?? 复制代码1.//MiddleClick、MiddleClickS、MiddleClickH??2.//MiddleClickS:?超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用??3.//MiddleClickH:?硬件模拟方式,仅支持PS(圆口)的鼠标?点击查看使用硬件模拟方式的注意事项??4.MiddleClick?5??5.//在当前鼠标的位置单击鼠标中键5次??脚本例子:(7.x语法)?? 复制代码1.//MiddleClick、MiddleClickS、MiddleClickH??2.//MiddleClickS:?超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用??3.//MiddleClickH:?硬件模拟方式,仅支持PS(圆口)的鼠标?点击查看使用硬件模拟方式的注意事项??4.MiddleClick?5??5.//在当前鼠标的位置单击鼠标中键5次??命令名称:MouseWheel鼠标滚轮命令功能:滚动鼠标滚轮命令参数:参数1整数型,滚动量返回值:无脚本例子:(8.x语法)?? 复制代码1.//如果滚动量为正,向上滚动;否则向下滚动.??2.//仅支持Windows?2000以上的操作系统.??3.MouseWheel?1??4.//把鼠标滚轮向上滚动1格??脚本例子:(7.x语法)?? 复制代码1.//如果滚动量为正,向上滚动;否则向下滚动.??2.//仅支持Windows?2000以上的操作系统.??3.MouseWheel?1??4.//把鼠标滚轮向上滚动1格??命令名称:MoveR鼠标相对移动命令功能:鼠标相对移动到命令参数:参数1整数型,X距离参数2整数型,Y距离返回值:无脚本例子:(8.x语法)?? 复制代码1.//MoveR、MoveRS、MoveRH??2.//MoveRS:?超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用??3.//MoveRH:?硬件模拟方式,仅支持PS(圆口)的鼠标?点击查看使用硬件模拟方式的注意事项??4.//当前鼠标在(100,100)点,使用下面语句??5.MoveR?200,300??6.//之后,鼠标就被移到了(100+200,100+300)处,也就是坐标(300,400)处??7.//提示:使用硬件模拟方式不能碰键盘鼠标,否则会导致出错??脚本例子:复制代码(7.x语法)?? 1.//MoveR、MoveRS、MoveRH??2.//MoveRS:?超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用??3.//MoveRH:?硬件模拟方式,仅支持PS(圆口)的鼠标?点击查看使用硬件模拟方式的注意事项??4.//当前鼠标在(100,100)点,使用下面语句??5.MoveR?200,300??6.//之后,鼠标就被移到了(100+200,100+300)处,也就是坐标(300,400)处??7.//提示:使用硬件模拟方式不能碰键盘鼠标,否则会导致出错??命令名称:MoveTo鼠标移动命令功能:移动鼠标到命令参数:参数1整数型,X坐标参数2整数型,Y坐标返回值:无脚本例子:(8.x语法)?? 复制代码1.//MoveTo、MoveToS、MoveToH??2.//MoveToS:?超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用??3.//MoveToH:?硬件模拟方式,仅支持PS(圆口)的鼠标??4.MoveTo?100,200??5.//把鼠标移动到(100,200)这个点上??6.intX=50??7.intY=150??8.MoveTo?intX,intY??9.//把鼠标移动到(intX,intY)这个点上,需要5.50以上版本支持.??脚本例子:(7.x语法)?? 复制代码1.//MoveTo、MoveToS、MoveToH??2.//MoveToS:?超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用??3.//MoveToH:?硬件模拟方式,仅支持PS(圆口)的鼠标??4.MoveTo?100,200??5.//把鼠标移动到(100,200)这个点上??6.intX=50??7.intY=150??8.MoveTo?intX,intY??9.//把鼠标移动到(intX,intY)这个点上,需要5.50以上版本支持.??命令名称:RestoreMousePos恢复上次保存的鼠标位置命令功能:保存当前鼠标位置命令参数:无返回值:无脚本例子:复制代码(8.x语法)?? 1.SaveMousePos??2.//保存当前鼠标位置??3.Delay?100??4.MoveTo?500,20??5.Delay?100??6.RestoreMousePos??7.//将鼠标移动到上一次保存的鼠标位置??8.//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,??9.//这样脚本执行后鼠标的位置就不会变化??脚本例子:(7.x语法)?? 复制代码1.SaveMousePos??2.//保存当前鼠标位置??3.Delay?100??4.MoveTo?500,20??5.Delay?100??6.RestoreMousePos??7.//将鼠标移动到上一次保存的鼠标位置??8.//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,??9.这样脚本执行后鼠标的位置就不会变化??命令名称:RightClick右键单击命令功能:模拟点击鼠标右键命令参数:参数1整数型,次数返回值:无脚本例子:(8.x语法)?? 复制代码1.//RightClick、RightClickS、RightClickH??2.//RightClickS:?超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用??3.//RightClickH:?硬件模拟方式,仅支持PS(圆口)的鼠标?点击查看使用硬件模拟方式的注意事项??4.RightClick?5??5.//在当前鼠标的位置单击鼠标右键5次??脚本例子:(7.x语法)?? 复制代码1.//RightClick、RightClickS、RightClickH??2.//RightClickS:?超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用??3.//RightClickH:?硬件模拟方式,仅支持PS(圆口)的鼠标?点击查看使用硬件模拟方式的注意事项??4.RightClick?5??5.//在当前鼠标的位置单击鼠标右键5次??命令名称:SaveMousePos保存当前鼠标所在位置命令功能:保存当前鼠标位置命令参数:无返回值:无脚本例子:(8.x语法)?? 复制代码1.SaveMousePos??2.//保存当前鼠标位置??3.Delay?100??4.MoveTo?500,20??5.Delay?100??6.RestoreMousePos??7.//将鼠标移动到上一次保存的鼠标位置??8.//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,??9.//这样脚本执行后鼠标的位置就不会变化??脚本例子:(7.x语法)?? 复制代码1.SaveMousePos??2.//保存当前鼠标位置??3.Delay?100??4.MoveTo?500,20??5.Delay?100??6.RestoreMousePos??7.//将鼠标移动到上一次保存的鼠标位置??8.//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,??9.这样脚本执行后鼠标的位置就不会变化??命令名称:UnlockMouse解除锁定鼠标位置命令功能:解除LockMouse命令对鼠标位置的锁定命令参数:无返回值:无脚本例子:(8.x语法)?? 复制代码1.??脚本例子:(7.x语法)?? 复制代码1.//如果用户使用了LockMouse命令而没有使用UnlockMouse命令,按键精灵会在脚本结束时自动解除锁定??2.UnlockMouse??命令名称:WaitClick按任意鼠标键继续命令功能:脚本执行到这一句暂停,按下任意鼠标键之后继续命令参数:参数1整数型,可选:变量名返回值:无脚本例子:(8.x语法)?? 复制代码st_click=WaitClick()???2.MessageBox?"您按下了"?&?last_click??脚本例子:(7.x语法)?? 复制代码1.WaitClick?last_click??2.MessageBox?"您按下了"?&?last_click??三、控制命令命令名称:Call调用过程命令功能:调用过程命令参数:参数1字符串型,过程名返回值:无脚本例子:(8.x语法)?? 复制代码1.Call?子程序("我是子程序,被你调用了")??2.EndScript??3.//支持中文名变量??4.Sub?子程序(啊)??5.????Msgbox?啊??6.End?Sub??7.//定义一个过程,可以在脚本中调用这个过程??脚本例子:(7.x语法)??复制代码命令名称:Do循环命令功能:条件循环命令参数:参数1条件型,循环条件返回值:无脚本例子:(8.x语法)?? 复制代码1.例子1:??2.//支持Exit?Do?命令退出循环??3.i=0??4.Do?While?i=0??5.????Msgbox?"我停不下来啦!!快住手"??6.Loop??7.//当循环条件成立的时候,反复执行循环体??8.例子2:??9.i=0??10.Do?Until?i=0??11.????Msgbox?"为什么没有循环到我呢?"??12.Loop??13.Msgbox?"循环结束"??14.//当循环条件成立的时候,离开循环体??15.例子3:??16.i=0??17.Do?Until?i=1??18.????Msgbox?"我停不下来啦!!快住手"??19.Loop??20.//当循环条件不成立的时候,反复执行循环体??21.例子4:??22.n=0??23.Do?While?true??24.????Msgbox?"我将循环10次停下来!!"??25.????If?n>=10?Then??26.????????//当循环条件成立的时候,离开循环体??27.????????Exit?do??28.????End?if??29.????n=n+1??30.Loop??31.Msgbox?n?&?"次"??32.例子5:??33.i?=?0??34.Do???35.???MessageBox?"ok"??36.Loop?While?i?<>?0??37.//条件放后面,前面的循环内容可以执行一次!??脚本例子:(7.x语法)?? 复制代码1.无??命令名称:For循环命令功能:循环一定次数命令参数:参数1整数型,循环次数返回值:无脚本例子:(8.x语法)?? 复制代码1.例子1:??2.//支持Exit?For?命令退出循环??3.For?i=0?To?9??4.????Delay?100??5.Next??6.//循环10次??7.例子2:??8.//支持Exit?For?命令退出循环??9.For?10??10.????Delay?100??11.Next??12.//循环10次??13.例子3:??14.//支持Exit?For?命令退出循环??15.For?i=0?to?19?step?2??16.????Delay?100??17.Next??18.//循环10次??19.例子4:??20.//支持Exit?For?命令退出循环??21.For?i=0?to?19?step?2??22.????Delay?100??23.????If?i>9?Then??24.????????Exit?For???25.????End?If??26.Next??27.//循环5次??脚本例子:(7.x语法)?? 复制代码1.For?10??2.????Delay?100??3.EndFor??4.//循环10次??命令名称:Function函数命令功能:函数命令参数:多类型,多参数返回值:多类型脚本例子:(8.x语法)?? 复制代码1.//支持Exit?Function?命令退出函数过程??2.Msgbox?函数过程("我是函数,被你调用了")??3.EndScript??4.Function?函数过程(a)??5.????函数过程=a??6.End?Function??7.//定义一个函数过程,可以在脚本中调用这个函数??脚本例子:(7.x语法)?? 复制代码1.无??命令名称:Gosub调用子程序命令功能:调用过程命令参数:参数1字符串型,过程名返回值:无脚本例子:(8.x语法)?? 复制代码1.//可带参数传递??2.Call?子程序("我是子程序,被你调用了")??3.EndScript??4.Sub?子程序(a)??5.????Msgbox?a??6.End?Sub???7.//定义一个过程,可以在脚本中调用这个过程??脚本例子:(7.x语法)?? 复制代码1.Gosub?子程序??2.EndScript??3.Sub?子程序??4.????Msgbox?"我是子程序,被你调用了"??5.Return?子程序??6.//定义一个过程,可以在脚本中调用这个过程??命令名称:Goto跳转到标记命令功能:跳转到Rem标记处命令参数:参数1字符串型,标号返回值:无脚本例子:(8.x语法)?? 复制代码1.Goto?标记??2.Delay?100??3.Rem?标记??4.Msgbox?"你直接跳到这里了!!,上面的延迟没有被执行!!"??5.//跳转语句,可以跳转到rem标记过的标记处继续执行??脚本例子:(7.x语法)?? 复制代码1.Goto?标记??2.Delay?100??3.Rem?标记??4.Msgbox?"你直接跳到这里了!!,上面的延迟没有被执行!!"??5.//跳转语句,可以跳转到rem标记过的标记处继续执行??命令名称:If如果..则命令功能:判断表达式命令参数:参数1条件型,表达式返回值:无脚本例子:(8.x语法)?? 复制代码1.例子1:??2.i=0??3.If?i=0?Then??4.????Msgbox?"条件判断符合被通过!!"??5.End?If??6.//通过判断表达式的取值,来执行后面的动作或控制??7.例子2:??8.i=1??9.If?i=0?Then??10.????Msgbox?"条件判断符合被通过!!"??11.ElseIf?i=1?Then??12.????Msgbox?"否则条件判断符合被通过!!"??13.Else??14.????Msgbox?"否则!!"??15.End?If??16.//通过判断表达式的取值,来执行后面的动作或控制??脚本例子:(7.x语法)?? 复制代码1.i=0??2.If?i=0??3.????Msgbox?"条件判断符合被通过!!"??4.EndIf??5.//通过判断表达式的取值,来执行后面的动作或控命令名称:IfColor颜色判断命令功能:判断屏幕某点的颜色命令参数:参数1整数型,屏幕X坐标参数2整数型,屏幕Y坐标参数3字符串型,颜色16进制值参数4整数型,判断条件返回值:无脚本例子:(8.x语法)?? 复制代码1.例子1:??2.//判断条件(0:等于?1:不等于?2:近似等于)??3.IfColor?860,27,"e1b072",0?Then??4.????Msgbox?"颜色等于"??5.Else???6.????Msgbox?"颜色不等于"??7.End?If??8.//判断坐标点(860,27)的颜色是否等于e1b072??9.例子2:??10.a=1:b=1??11.IfColor?650,118,"78F0E8",2?Then??12.????MessageBox?"a"??13.ElseIf?b=a?Then??14.????MessageBox?"b"??15.End?if??脚本例子:(7.x语法)?? 复制代码1.//判断条件(0:等于?1:不等于?2:近似等于)??2.IfColor?860,27,e1b072,0??3.????Msgbox?"颜色等于"??4.Else???5.????Msgbox?"颜色不等于"??6.EndIf??7.//判断坐标点(860,27)的颜色是否等于e1b072??命令名称:Rem标记/注释命令功能:标记命令可当注释命令参数:参数1字符串型,文字返回值:无脚本例子:(8.x语法)?? 复制代码1.//不支持数字开头的和符号作为标记名??2.//标记命令.即可当注释,也可以为Goto跳转指令作标记??3.Rem?脚本开始??脚本例子:(7.x语法)?? 复制代码1.//标记命令.即可当注释,也可以为Goto跳转指令作标记??2.Rem?脚本开始??命令名称:RestartScript重新启动脚本运行命令功能:重新启动脚本运行命令参数:无返回值:无脚本例子:(8.x语法)?? 复制代码1.For?i=0?to?2???2.????Delay?1000??3.????Call?Plugin.Msg.ShowScrTXT(0,?0,?1024,?768,?"屏幕内容填写"?&?i,?"0000FF")???4.Next???5.RestartScript?//重新启动脚本运行??(7.x语法)??1.无??命令名称:Select情况条件选择命令功能:根据情况选择条件判断命令参数:参数1条件型,情况返回值:无脚本例子:(8.x语法)?? 复制代码1.//不支持判断语句?如:Case?a>0??erVar?变量=0?"输入(0~9)数字"??3.//<>---------------------------------------------以下是选择条件结结构判断??4.Select?Case?变量??5.Case?0??6.????Msgbox?"你输入的数字为:0"???7.Case?1??8.????Msgbox?"你输入的数字为:1"???9.Case?2??10.????Msgbox?"你输入的数字为:2"???11.Case?3??12.????Msgbox?"你输入的数字为:3"???13.Case?4??14.????Msgbox?"你输入的数字为:4"???15.Case?5??16.????Msgbox?"你输入的数字为:5"???17.Case?6??18.????Msgbox?"你输入的数字为:6"???19.Case?7??20.????Msgbox?"你输入的数字为:7"???21.Case?8??22.????Msgbox?"你输入的数字为:8"???23.Case?9??24.????Msgbox?"你输入的数字为:9"???25.Case?Else??26.????Msgbox?"你输入的数字不正确,请输入(0~9)数字!"??27.End?Select??脚本例子:(7.x语法)?? 复制代码1.无??命令名称:Sub子程序命令功能:定义一个过程命令参数:参数1字符串型,过程名返回值:无(8.x 语法)?? 1. //支持Exit?Sub?命令退出子程序过程??2. Call ?子程序()??3. EndScript??4. Sub ?子程序()??5. ????Msgbox?"我是子程序,被你调用了"??6. End ?Sub ??7. //定义一个过程,可以在脚本中调用这个过程??脚本例子:(7.x 语法)?? 复制代码 1. Gosub ?子程序??2. EndScript??3. Sub ?子程序??4. ????Msgbox?"我是子程序,被你调用了"??5. Return ?子程序??6. //定义一个过程,可以在脚本中调用这个过程??命令名称:While 如果..则循环 命令功能:条件循环 命令参数:参数1条件型,循环条件 返回值:无 脚本例子:(8.x 语法)?? 复制代码 1. i=0??2. While ?i=0??3. ????Msgbox?"我停不下来啦!!快住手"??4. Wend??5. //当循环条件成立的时候,反复执行循环体??脚本例子:(7.x 语法)?? 复制代码 1. i=0??2. While ?i=0??3. ????Msgbox?"我停不下来啦!!快住手"??4. EndWhile??5. //当循环条件成立的时候,反复执行循环体??四、颜色/图像命令参数3整数型,屏幕右下角x坐标参数4整数型,屏幕右下角y坐标参数5字符串型,16进制颜色值参数6整数型,返回x坐标参数7整数型,返回y坐标返回值:无脚本例子:(8.x语法)?? 复制代码1.//FindCenterColor?left,top,right,bottom,c,x,y??2.//在区域内从中心到外围找颜色为c的点,把坐标保存在变量x和y中??3.//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,下界限??4.//颜色是类似于"0000FF"的字符串,如果不取变量,别忘了加双引号??5.//如果没有找到这个颜色,则x和y的值都被置为-1??6.FindCenterColor?0,0,800,600,"0000FF",x,y??7.If?x>0?and?y>0?Then??8.????MoveTo?x,y??9.End?If???10.//在区域(0,0,800,600)中找红色("0000FF")的点,如果找到,则把鼠标移动到这个点??脚本例子:(7.x语法)?? 复制代码1.//VBSCall?FindCenterColor(left,top,right,bottom,c,x,y)??2.//在区域内从中心到外围找颜色为c的点,把坐标保存在变量x和y中??3.//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,下界限??4.//颜色是类似于"0000FF"的字符串,如果不取变量,别忘了加双引号??5.//如果没有找到这个颜色,则x和y的值都被置为-1??6.VBSCall?FindCenterColor(0,0,800,600,"0000FF",x,y)??7.If?x>0?and?y>0??8.????MoveTo?x,y??9.EndIf???10.//在区域(0,0,800,600)中找红色("0000FF")的点,如果找到,则把鼠标移动到这个点??命令名称:FindColor找色命令功能:在屏幕区域从左到右、从上到下的查找指定的颜色命令参数:参数1整数型,屏幕左上角x坐标参数2整数型,屏幕左上角y坐标参数3整数型,屏幕右下角x坐标参数4整数型,屏幕右下角y坐标参数5字符串型,16进制颜色值参数6整数型,返回x坐标参数7整数型,返回y坐标返回值:无脚本例子:(8.x语法)?? 复制代码1.//FindColor?left,top,right,bottom,c,x,y??2.//在区域内从左到右,从上到下找颜色为c的点,把坐标保存在变量x和y中??3.//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,下界限??4.//颜色是类似于"0000FF"的字符串,如果不取变量,别忘了加双引号??5.//如果没有找到这个颜色,则x和y的值都被置为-1??6.FindColor?0,0,800,600,"0000FF",x,y??7.If?x>0?and?y>0?Then??8.????MoveTo?x,y??9.End?If???10.//在区域(0,0,800,600)中找红色("0000FF")的点,如果找到,则把鼠标移动到这个点??脚本例子:(7.x语法)?? 复制代码1.//VBSCall?FindColor(left,top,right,bottom,c,x,y)??2.//在区域内从左到右,从上到下找颜色为c的点,把坐标保存在变量x和y中??3.//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,下界限??4.//颜色是类似于"0000FF"的字符串,如果不取变量,别忘了加双引号??5.//如果没有找到这个颜色,则x和y的值都被置为-1??6.VBSCall?FindColor(0,0,800,600,"0000FF",x,y)??7.If?x>0?and?y>0??8.????MoveTo?x,y??9.EndIf???10.//在区域(0,0,800,600)中找红色("0000FF")的点,如果找到,则把鼠标移动到这个点??命令名称:FindColorEx模糊找色命令功能:在屏幕区域模糊查找指定的颜色命令参数:参数1整数型,屏幕左上角x坐标参数2整数型,屏幕左上角y坐标参数3整数型,屏幕右下角x坐标参数4整数型,屏幕右下角y坐标参数5字符串型,16进制颜色值参数6整数型,查找方式参数7整数型,相似度参数8整数型,返回x坐标参数9整数型,返回y坐标返回值:无脚本例子:(8.x语法)?? 复制代码1.//FindColorEx?left,top,right,bottom,c,type,similar,x,y??2.//在区域内找颜色为c的点,把坐标保存在变量x和y中??3.//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,下界限??4.//颜色是类似于"0000FF"的字符串,如果不取变量,别忘了加双引号??5.//type表示查找方式。
怎么开发脚本?用按键精灵学习基础改窗口代码
怎么开发脚本?用按键精灵学习基础改窗口代码
用VB语言写代码,看不懂没有关系,我们只要打开按键精灵的安装目录。
在source目录下,可以找到一个“自定义界面例子”的压缩包,解压后在VB里打开这个vbp文件。
然后对这个文件进行3个地方的需要就行了。
第一个地方在onlinitialize函数下面,这是下拉列表默认选项的内容,把它的名称改为“anjian”默认数字等于0,1,2都可以。
表示默认的选项是第一。
第二或者第三个。
第二个地方在onsave函数下面。
依葫芦画瓢把我们3个变量加进去。
Anjianma是下拉列表变量,就采用listndex那行的格式
两个普通输入框变量,采用其他行的格式。
添加好后,就把他原来的几行都删掉。
是一样,把原来的几句删掉。
三个地方都改好以后,保存一下。
点文件,生产OCX文件,回到按键精灵,在右边的自定义界面里点击选择OCX界面,选中做好的OCX界面,然后保存退出。
在类表里选中脚本,就可以看到脚本属性里多了一个自定义界面的选项了。
按键精灵的周边产品商业小精灵也强
势出击,其具体的操作资料,可百度按键精灵论坛查询:。
按键精灵脚本编写命令大全及示例之欧阳道创编
按键精灵学习教程一、一、键盘命令(2~5页)二、鼠标命令(5~13页)三、控制命令(13~22页)四、颜色/图像命令(22~28页)五、其他命令(28~35页)五、网游脚本实例(35~最后)一、键盘命令命令名称:GetLastKey 检测上次按键命令功能:检测上次按键命令参数:参数1 整数型,可选:变量名返回值:无脚本例子:(8.x语法) 复制代码1.//脚本运行到这一行不会暂停,调用的时候立即返回,得到调用之前最后一次按下的按键码保存在变量Key里。
2.Key=GetLastKey()3.If Key = 13 Then4. Msgbox "你上次按下了回车键"5.End If脚本例子: (7.x语法) 复制代码1.//脚本运行到这一行不会暂停,调用的时候立即返回,得到调用之前最后一次按下的按键码保存在变量Key里。
2.GetLastKey Key3.If Key = 134. Msgbox "你上次按下了回车键"5.EndIf命令名称:KeyDown 按住命令功能:键盘按住命令参数:参数1 整数型,键盘虚拟码(8.X支持按键字符)参数2 整数型,次数返回值:无脚本例子:(8.x语法) 复制代码1.//KeyDown、KeyDownS、KeyDownH2.//KeyDownS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用3.//KeyDownH: 硬件模拟方式,仅支持PS(圆口)的键盘点击查看使用硬件模拟方式的注意事项4.KeyDown 65,15.//65是A键的按键码,上面的语句表示按住A键1次6.7.KeyDown "A",18.//上面的支持按键字符,语句表示按住A键1次脚本例子: (7.x语法) 复制代码1.//KeyDown、KeyDownS、KeyDownH2.//KeyDownS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用3.//KeyDownH: 硬件模拟方式,仅支持PS(圆口)的键盘点击查看使用硬件模拟方式的注意事项4.KeyDown 65,15.//65是A键的按键码,上面的语句表示按住A键1次命令名称:KeyPress 按键命令功能:键盘按键命令参数:参数1 整数型,键盘虚拟码(8.X支持按键字符)参数2 整数型,次数返回值:无脚本例子:(8.x语法) 复制代码1.//KeyPress、KeyPressS、KeyPressH2.//KeyPressS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用3.//KeyPressH: 硬件模拟方式,仅支持PS(圆口)的键盘点击查看使用硬件模拟方式的注意事项4.KeyPress 65,15.//65是A键的按键码,上面的语句表示按A键1次6.7.KeyPress "A",18.//上面的支持按键字符,语句表示按A键1次脚本例子: (7.x语法) 复制代码1.//KeyPress、KeyPressS、KeyPressH2.//KeyPressS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用3.//KeyPressH: 硬件模拟方式,仅支持PS(圆口)的键盘点击查看使用硬件模拟方式的注意事项4.KeyPress 65,15.//65是A键的按键码,上面的语句表示按A键1次命令名称:KeyUp 弹起命令功能:键盘弹起命令参数:参数1 整数型,键盘虚拟码(8.X支持按键字符)参数2 整数型,次数返回值:无脚本例子:(8.x语法) 复制代码1.//KeyUp、KeyUpS、KeyUpH2.//KeyUpS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用3.//KeyUpH: 硬件模拟方式,仅支持PS(圆口)的键盘点击查看使用硬件模拟方式的注意事项4.KeyUp 65,15.//65是A键的按键码,上面的语句表示松开A键1次6.7.KeyUp "A",18.//上面的支持按键字符,语句表示松开A键1次脚本例子: (7.x语法) 复制代码1.//KeyUp、KeyUpS、KeyUpH2.//KeyUpS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用3.//KeyUpH: 硬件模拟方式,仅支持PS(圆口)的键盘点击查看使用硬件模拟方式的注意事项4.KeyUp 65,15.//65是A键的按键码,上面的语句表示松开A键1次命令名称:WaitKey 等待按任意键命令功能:等待按任意键命令参数:参数1 整数型,可选:变量名返回值:无脚本例子:(8.x语法) 复制代码1.Key=WaitKey()2.//脚本运行到这一行会暂停,当用户按下键盘后继续执行,并且把用户的按键码保存在变量Key里3.If Key = 13 Then4. MessageBox "恭喜你按下了回车键"5.End If脚本例子: (7.x语法) 复制代码1.WaitKey Key2.//脚本运行到这一行会暂停,当用户按下键盘后继续执行,并且把用户的按键码保存在变量Key里3.If Key = 134. Msgbox "恭喜你按下了回车键"5.EndIf二、鼠标命令命令名称:GetCursorPos 得到鼠标位置坐标命令功能:得到当前鼠标所在的位置坐标命令参数:参数1 整数型,返回x坐标参数2 整数型,返回y坐标返回值:无脚本例子:(8.x语法) 复制代码1.GetCursorPos mx,my2.//把当前鼠标位置的x和y坐标放在变量mx和my中脚本例子: (7.x语法) 复制代码1.VBSCall GetCursorPos(mx,my)2.//把当前鼠标位置的x和y坐标放在变量mx和my中命令名称:GetCursorShape 得到鼠标形状命令功能:得到当前鼠标的形状特征命令参数:参数1 整数型,参数返回值:整数型,鼠标的形状值脚本例子:(8.x语法) 复制代码1.//参数: 0 是6.83之前的版本默认的参数2.//参数: 1 可用于一些在参数0下无法区分鼠标形状代码的情况3.//下面是我们普通的WINDOWS鼠标形状特征4.//不同电脑上鼠标形状特征也许不同,请使用"抓点抓色"功能抓取正确的鼠标形状特征5.Shape1 = 15933502876.//下面是我们访问网页超链接时候的手型鼠标形状7.Shape2 = 10559913298.shape=GetCursorShape(0)9.If shape = shape1 Then10. MessageBox "当前鼠标形状是普通的WINDOWS鼠标"11.ElseIf shape = shape2 Then12. MessageBox "当前鼠标形状是手型鼠标"13.Else14. MessageBox "不认识当前鼠标形状!"15.End If脚本例子: (7.x语法) 复制代码1.//参数: 0 是6.83之前的版本默认的参数2.//参数: 1 可用于一些在参数0下无法区分鼠标形状代码的情况3.//下面是我们普通的WINDOWS鼠标形状特征4.//不同电脑上鼠标形状特征也许不同,请使用"抓点抓色"功能抓取正确的鼠标形状特征5.Shape1 = 15933502876.//下面是我们访问网页超链接时候的手型鼠标形状7.Shape2 = 10559913298.VBSCall Shape=GetCursorShape(0)9.If shape = shape110. MessageBox 当前鼠标形状是普通的WINDOWS鼠标11.ElseIf shape = shape212. MessageBox 当前鼠标形状是手型鼠标13.Else14. MessageBox 不认识当前鼠标形状!15.EndIf命令名称:GetLastClick 检测上次按过的鼠标键命令功能:检测上一次按下的鼠标代码命令参数:参数1 整数型,可选:变量名返回值:无脚本例子:(8.x语法) 复制代码1.Mouse=GetLastClick()2.If Mouse =32770 Or Mouse =32769 Then3. Msgbox "你按下了鼠标左键"4.End If脚本例子: (7.x语法) 复制代码1.GetLastClick Mouse2.If Mouse =32770 Or Mouse =327693. Msgbox "你按下了鼠标左键"4.EndIf命令名称:LeftClick 左键单击命令功能:模拟点击鼠标左键命令参数:参数1 整数型,次数返回值:无脚本例子:(8.x语法) 复制代码1.//LeftClick、LeftClickS、LeftClickH2.//LeftClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//LeftClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.LeftClick 55.//在当前鼠标的位置单击鼠标左键5次脚本例子: (7.x语法) 复制代码1.//LeftClick、LeftClickS、LeftClickH2.//LeftClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//LeftClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.LeftClick 55.//在当前鼠标的位置单击鼠标左键5次命令名称:LeftDoubleClick 左键双击命令功能:模拟双击鼠标左键命令参数:参数1 整数型,次数返回值:无脚本例子:(8.x语法) 复制代码1.//LeftDoubleClick、LeftDoubleClickS、LeftDoubleClickH]2.//LeftDoubleClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//LeftDoubleClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.LeftDoubleClick 55.//在当前鼠标的位置双击鼠标左键5次脚本例子: (7.x语法) 复制代码1.//LeftDoubleClick、LeftDoubleClickS、LeftDoubleClickH]2.//LeftDoubleClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//LeftDoubleClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.LeftDoubleClick 55.//在当前鼠标的位置双击鼠标左键5次命令名称:LockMouse 锁定鼠标位置命令功能:锁定鼠标位置,用户将不能通过移动鼠标而改变鼠标位置,而脚本仍可以改变鼠标位置命令参数:无返回值:无脚本例子:(8.x语法) 复制代码1.//在脚本开始的时候使用这个命令,可以有效防止用户误触鼠标引起脚本执行出错2.LockMouse3.Do4.Delay 10005.Loop脚本例子: (7.x语法) 复制代码1.//在脚本开始的时候使用这个命令,可以有效防止用户误触鼠标引起脚本执行出错2.LockMouse3.While True4.Delay 10005.EndWhile命令名称:MiddleClick 中键单击命令功能:模拟点击鼠标中键命令参数:参数1 整数型,次数返回值:无脚本例子:(8.x语法) 复制代码1.//MiddleClick、MiddleClickS、MiddleClickH2.//MiddleClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//MiddleClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.MiddleClick 55.//在当前鼠标的位置单击鼠标中键5次脚本例子: (7.x语复制代码1.//MiddleClick、MiddleClickS、法)MiddleClickH2.//MiddleClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//MiddleClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.MiddleClick 55.//在当前鼠标的位置单击鼠标中键5次命令名称:MouseWheel 鼠标滚轮命令功能:滚动鼠标滚轮命令参数:参数1 整数型,滚动量返回值:无脚本例子:(8.x语法) 复制代码1.//如果滚动量为正,向上滚动;否则向下滚动.2.//仅支持Windows 2000以上的操作系统.3.MouseWheel 14.//把鼠标滚轮向上滚动1格脚本例子: (7.x语法) 复制代码1.//如果滚动量为正,向上滚动;否则向下滚动.2.//仅支持Windows 2000以上的操作系统.3.MouseWheel 14.//把鼠标滚轮向上滚动1格命令名称:MoveR 鼠标相对移动命令功能:鼠标相对移动到命令参数:参数1 整数型,X距离参数2 整数型,Y距离返回值:无脚本例子:(8.x语法) 复制代码1.//MoveR、MoveRS、MoveRH2.//MoveRS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//MoveRH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.//当前鼠标在(100,100)点,使用下面语句5.MoveR 200,3006.//之后,鼠标就被移到了(100+200,100+300)处,也就是坐标(300,400)处7.//提示:使用硬件模拟方式不能碰键盘鼠标,否则会导致出错脚本例子: (7.x语法) 复制代码1.//MoveR、MoveRS、MoveRH2.//MoveRS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//MoveRH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.//当前鼠标在(100,100)点,使用下面语句5.MoveR 200,3006.//之后,鼠标就被移到了(100+200,100+300)处,也就是坐标(300,400)处7.//提示:使用硬件模拟方式不能碰键盘鼠标,否则会导致出错命令名称:MoveTo 鼠标移动命令功能:移动鼠标到命令参数:参数1 整数型,X坐标参数2 整数型,Y坐标返回值:无脚本例子:(8.x语法) 复制代码1.//MoveTo、MoveToS、MoveToH2.//MoveToS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//MoveToH: 硬件模拟方式,仅支持PS(圆口)的鼠标4.MoveTo 100,2005.//把鼠标移动到(100,200)这个点上6.intX=507.intY=1508.MoveTo intX,intY9.//把鼠标移动到(intX,intY)这个点上,需要5.50以上版本支持.脚本例子: (7.x语法) 复制代码1.//MoveTo、MoveToS、MoveToH2.//MoveToS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//MoveToH: 硬件模拟方式,仅支持PS(圆口)的鼠标4.MoveTo 100,2005.//把鼠标移动到(100,200)这个点上6.intX=507.intY=1508.MoveTo intX,intY9.//把鼠标移动到(intX,intY)这个点上,需要5.50以上版本支持.命令名称:RestoreMousePos 恢复上次保存的鼠标位置命令功能:保存当前鼠标位置命令参数:无返回值:无脚本例子:(8.x语法) 复制代码1.SaveMousePos2.//保存当前鼠标位置3.Delay 1004.MoveTo 500,205.Delay 1006.RestoreMousePos7.//将鼠标移动到上一次保存的鼠标位置8.//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,9.//这样脚本执行后鼠标的位置就不会变化脚本例子: (7.x语法) 复制代码1.SaveMousePos2.//保存当前鼠标位置3.Delay 1004.MoveTo 500,205.Delay 1006.RestoreMousePos7.//将鼠标移动到上一次保存的鼠标位置8.//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,9.这样脚本执行后鼠标的位置就不会变化命令名称:RightClick 右键单击命令功能:模拟点击鼠标右键命令参数:参数1 整数型,次数返回值:无脚本例子:(8.x语法) 复制代码1.//RightClick、RightClickS、RightClickH2.//RightClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//RightClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.RightClick 55.//在当前鼠标的位置单击鼠标右键5次脚本例子: (7.x语法) 复制代码1.//RightClick、RightClickS、RightClickH2.//RightClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//RightClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.RightClick 55.//在当前鼠标的位置单击鼠标右键5次命令名称:SaveMousePos 保存当前鼠标所在位置命令功能:保存当前鼠标位置命令参数:无返回值:无脚本例子:(8.x语法) 复制代码1.SaveMousePos2.//保存当前鼠标位置3.Delay 1004.MoveTo 500,205.Delay 1006.RestoreMousePos7.//将鼠标移动到上一次保存的鼠标位置8.//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,9.//这样脚本执行后鼠标的位置就不会变化脚本例子: (7.x语法) 复制代码1.SaveMousePos2.//保存当前鼠标位置3.Delay 1004.MoveTo 500,205.Delay 1006.RestoreMousePos7.//将鼠标移动到上一次保存的鼠标位置8.//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,9.这样脚本执行后鼠标的位置就不会变化命令名称:UnlockMouse 解除锁定鼠标位置命令功能:解除LockMouse命令对鼠标位置的锁定命令参数:无返回值:无脚本例子:(8.x语法) 复制代码1.脚本例子: (7.x语法) 复制代码1.//如果用户使用了LockMouse命令而没有使用UnlockMouse命令,按键精灵会在脚本结束时自动解除锁定2.UnlockMouse命令名称:WaitClick 按任意鼠标键继续命令功能:脚本执行到这一句暂停,按下任意鼠标键之后继续命令参数:参数1 整数型,可选:变量名返回值:无脚本例子:(8.x语法) 复制代码st_click=WaitClick()2.MessageBox "您按下了" & last_click脚本例子: (7.x语法) 复制代码1.WaitClick last_click2.MessageBox "您按下了" & last_click三、控制命令命令名称:Call 调用过程命令功能:调用过程命令参数:参数1 字符串型,过程名返回值:无脚本例子:(8.x语法) 复制代码1.Call子程序("我是子程序,被你调用了")2.EndScript3.//支持中文名变量4.Sub子程序(啊)5. Msgbox 啊6.End Sub7.//定义一个过程,可以在脚本中调用这个过程脚本例子: (7.x语法) 复制代码命令名称:Do 循环命令功能:条件循环命令参数:参数1 条件型,循环条件返回值:无脚本例子:(8.x语法) 复制代码1.例子1:2.//支持Exit Do 命令退出循环3.i=04.Do While i=05. Msgbox "我停不下来啦!!快住手"6.Loop7.//当循环条件成立的时候,反复执行循环体8.9.10.例子2:11.i=012.Do Until i=013. Msgbox "为什么没有循环到我呢?"14.Loop15.Msgbox "循环结束"16.//当循环条件成立的时候,离开循环体17.18.19.例子3:20.i=021.Do Until i=122. Msgbox "我停不下来啦!!快住手"23.Loop24.//当循环条件不成立的时候,反复执行循环体25.26.27.例子4:28.n=029.Do While true30. Msgbox "我将循环10次停下来!!"31.If n>=10 Then32. //当循环条件成立的时候,离开循环体33.Exit do34.End if35. n=n+136.Loop37.Msgbox n & "次"38.39.40.例子5:41.i = 042.Do43. MessageBox "ok"44.Loop While i <> 045.//条件放后面,前面的循环内容可以执行一次!脚本例子: (7.x语法) 复制代码1.无命令名称:For 循环命令功能:循环一定次数命令参数:参数1 整数型,循环次数返回值:无脚本例子:(8.x语法) 复制代码1.例子1:2.//支持Exit For 命令退出循环3.For i=0 To 94.Delay 1005.Next6.//循环10次7.8.例子2:9.//支持Exit For 命令退出循环10.For 1011.Delay 10012.Next13.//循环10次14.15.16.例子3:17.//支持Exit For 命令退出循环18.For i=0 to 19 step 219.Delay 10020.Next21.//循环10次22.23.例子4:24.//支持Exit For 命令退出循环25.For i=0 to 19 step 226.Delay 10027.If i>9 Then28.Exit For29.End If30.Next31.//循环5次脚本例子: (7.x语法) 复制代码1.For 102.Delay 1003.EndFor4.//循环10次命令名称:Function 函数命令功能:函数命令参数:多类型,多参数返回值:多类型脚本例子:(8.x语法) 复制代码1.//支持Exit Function 命令退出函数过程2.Msgbox 函数过程("我是函数,被你调用了")3.EndScript4.Function函数过程(a)5.函数过程=a6.End Function7.//定义一个函数过程,可以在脚本中调用这个函数脚本例子: (7.x语法) 复制代码1.无命令名称:Gosub 调用子程序命令功能:调用过程命令参数:参数1 字符串型,过程名返回值:无脚本例子:(8.x语法) 复制代码1.//可带参数传递2.Call子程序("我是子程序,被你调用了")3.EndScript4.Sub子程序(a)5. Msgbox a6.End Sub7.//定义一个过程,可以在脚本中调用这个过程脚本例子: (7.x语法) 复制代码1.Gosub子程序2.EndScript3.Sub子程序4. Msgbox "我是子程序,被你调用了"5.Return子程序6.//定义一个过程,可以在脚本中调用这个过程命令名称:Goto 跳转到标记命令功能:跳转到Rem标记处命令参数:参数1 字符串型,标号返回值:无脚本例子:(8.x语法) 复制代码1.Goto标记2.Delay 1003.Rem标记4.Msgbox "你直接跳到这里了!!,上面的延迟没有被执行!!"5.//跳转语句,可以跳转到rem标记过的标记处继续执行脚本例子: (7.x语法) 复制代码1.Goto标记2.Delay 1003.Rem标记4.Msgbox "你直接跳到这里了!!,上面的延迟没有被执行!!"5.//跳转语句,可以跳转到rem标记过的标记处继续执行命令名称:If 如果..则命令功能:判断表达式命令参数:参数1 条件型,表达式返回值:无脚本例子:(8.x语法) 复制代码1.例子1:2.i=03.If i=0 Then4. Msgbox "条件判断符合被通过!!"5.End If6.//通过判断表达式的取值,来执行后面的动作或控制7.8.例子2:9.i=110.If i=0 Then11. Msgbox "条件判断符合被通过!!"12.ElseIf i=1 Then13. Msgbox "否则条件判断符合被通过!!"14.Else15. Msgbox "否则!!"16.End If17.//通过判断表达式的取值,来执行后面的动作或控制脚本例子: (7.x语法) 复制代码1.i=02.If i=03. Msgbox "条件判断符合被通过!!"4.EndIf5.//通过判断表达式的取值,来执行后面的动作或控命令名称:IfColor 颜色判断命令功能:判断屏幕某点的颜色命令参数:参数1 整数型,屏幕X坐标参数2 整数型,屏幕Y坐标参数3 字符串型,颜色16进制值参数4 整数型,判断条件返回值:无脚本例子:(8.x语法) 复制代码1.例子1:2.//判断条件(0:等于 1:不等于 2:近似等于)3.IfColor 860,27,"e1b072",0 Then4. Msgbox "颜色等于"5.Else6. Msgbox "颜色不等于"7.End If8.//判断坐标点(860,27)的颜色是否等于e1b0729.10.11.例子2:12.a=1:b=113.IfColor 650,118,"78F0E8",2 Then14. MessageBox "a"15.ElseIf b=a Then16. MessageBox "b"17.End if脚本例子: (7.x语法) 复制代码1.//判断条件(0:等于 1:不等于 2:近似等于)2.IfColor 860,27,e1b072,03. Msgbox "颜色等于"4.Else5. Msgbox "颜色不等于"6.EndIf7.//判断坐标点(860,27)的颜色是否等于e1b072命令名Rem 标记/注释称:命令功标记命令可当注释能:命令参参数1 字符串型,文字数:返回值:无脚本例子:(8.x 语法) 复制代码1.//不支持数字开头的和符号作为标记名2.//标记命令.即可当注释,也可以为Goto跳转指令作标记3.Rem脚本开始脚本例子:(7.x语法) 复制代码1.//标记命令.即可当注释,也可以为Goto跳转指令作标记2.Rem脚本开始命令名称:RestartScript 重新启动脚本运行命令功能:重新启动脚本运行命令参数:无返回值:无脚本例子:(8.x 语法) 复制代码1.For i=0 to 22.Delay 10003.Call Plugin.Msg.ShowScrTXT(0, 0, 1024, 768, "屏幕内容填写" & i, "0000FF")4.Next5.RestartScript //重新启动脚本运行脚本例子:(7.x语法) 复制代码1.无命令名称:Select 情况条件选择命令功能:根据情况选择条件判断命令参数:参数1 条件型,情况返回值:无脚本例子:(8.x 语法) 复制代码1.//不支持判断语句如:Case a>0erVar 变量=0 "输入(0~9)数字"3.//<>---------------------------------------------以下是选择条件结结构判断4.Select Case变量5.Case 06. Msgbox "你输入的数字为:0"7.Case 18. Msgbox "你输入的数字为:1"9.Case 210. Msgbox "你输入的数字为:2"11.Case 312. Msgbox "你输入的数字为:3"13.Case 414. Msgbox "你输入的数字为:4"15.Case 516. Msgbox "你输入的数字为:5"17.Case 618. Msgbox "你输入的数字为:6"19.Case 720. Msgbox "你输入的数字为:7"21.Case 822. Msgbox "你输入的数字为:8"23.Case 924. Msgbox "你输入的数字为:9"25.Case Else26. Msgbox "你输入的数字不正确,请输入(0~9)数字!"27.End Select脚本例子:(7.x语法) 复制代码1.无命令名Sub 子程序称:命令功能:定义一个过程命令参数:参数1 字符串型,过程名返回值:无脚本例子:(8.x 语法) 复制代码1.//支持Exit Sub 命令退出子程序过程2.Call子程序()3.EndScript4.Sub子程序()5. Msgbox "我是子程序,被你调用了"6.End Sub7.//定义一个过程,可以在脚本中调用这个过程脚本例子:(7.x语法) 复制代码1.Gosub子程序2.EndScript3.Sub子程序4. Msgbox "我是子程序,被你调用了"5.Return子程序6.//定义一个过程,可以在脚本中调用这个过程命令名称:While 如果..则循环命令功能:条件循环命令参数:参数1 条件型,循环条件返回值:无脚本例子:(8.x 语复制代码1.i=02.While i=03. Msgbox "我停不下来啦!!快住手"4.Wend法)5.//当循环条件成立的时候,反复执行循环体脚本例子:(7.x语法) 复制代码1.i=02.While i=03. Msgbox "我停不下来啦!!快住手"4.EndWhile5.//当循环条件成立的时候,反复执行循环体四、颜色/图像命令命令名称:FindCenterColor 中心找色命令功能:在屏幕区域从中心开始查找指定的颜色命令参数:参数1 整数型,屏幕左上角x坐标参数2 整数型,屏幕左上角y坐标参数3 整数型,屏幕右下角x坐标参数4 整数型,屏幕右下角y坐标参数5 字符串型,16进制颜色值参数6 整数型,返回x坐标参数7 整数型,返回y 坐标返回值:无脚本例子:(8.x语法) 复制代码1.//FindCenterColor left,top,right,bottom,c,x,y2.//在区域内从中心到外围找颜色为c的点,把坐标保存在变量x和y中3.//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,下界限4.//颜色是类似于"0000FF"的字符串,如果不取变量,别忘了加双引号5.//如果没有找到这个颜色,则x和y的值都被置为-16.FindCenterColor 0,0,800,600,"0000FF",x,y7.If x>0 and y>0 Then8. MoveTo x,y9.End If10.//在区域(0,0,800,600)中找红色("0000FF")的点,如果找到,则把鼠标移动到这个点脚本例子:(7.x语法) 复制代码1.//VBSCall FindCenterColor(left,top,right,bottom,c,x,y)2.//在区域内从中心到外围找颜色为c的点,把坐标保存在变量x和y中3.//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,下界限4.//颜色是类似于"0000FF"的字符串,如果不取变量,别忘了加双引号5.//如果没有找到这个颜色,则x和y的值都被置为-16.VBSCall FindCenterColor(0,0,800,600,"0000FF",x,y)7.If x>0 and y>08. MoveTo x,y9.EndIf10.//在区域(0,0,800,600)中找红色("0000FF")的点,如果找到,则把鼠标移动到这个点命令名称:FindColor 找色命令功能:在屏幕区域从左到右、从上到下的查找指定的颜色命令参数:参数1 整数型,屏幕左上角x坐标参数2 整数型,屏幕左上角y坐标参数3 整数型,屏幕右下角x坐标参数4 整数型,屏幕右下角y坐标参数5 字符串型,16进制颜色值参数6 整数型,返回x坐标参数7 整数型,返回y 坐标返回值:无脚本例子:(8.x语法) 复制代码1.//FindColor left,top,right,bottom,c,x,y2.//在区域内从左到右,从上到下找颜色为c的点,把坐标保存在变量x和y中3.//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,下界限4.//颜色是类似于"0000FF"的字符串,如果不取变量,别忘了加双引号5.//如果没有找到这个颜色,则x和y的值都被置为-16.FindColor 0,0,800,600,"0000FF",x,y7.If x>0 and y>0 Then8. MoveTo x,y9.End If10.//在区域(0,0,800,600)中找红色("0000FF")的点,如果找到,则把鼠标移动到这个点脚本例子:(7.x语法) 复制代码1.//VBSCall FindColor(left,top,right,bottom,c,x,y)2.//在区域内从左到右,从上到下找颜色为c的点,把坐标保存在变量x和y中3.//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,下界限4.//颜色是类似于"0000FF"的字符串,如果不取变量,别忘了加双引号5.//如果没有找到这个颜色,则x和y的值都被置为-16.VBSCall FindColor(0,0,800,600,"0000FF",x,y)7.If x>0 and y>08. MoveTo x,y9.EndIf10.//在区域(0,0,800,600)中找红色("0000FF")的点,如果找到,则把鼠标移动到这个点命令名称:FindColorEx 模糊找色命令功能:在屏幕区域模糊查找指定的颜色命令参参数1 整数型,屏幕左上角x坐标参数2 整数型,屏幕左上角y坐标参数3 整数型,屏幕右下角x坐标参数4。
按键精灵源码
按键精灵源码//做这东西主要是为了新人学习之用希望对新人们有一些帮助//声明一些下面要用到的变量(其实不声明也可以不过为了养成//编程的好习惯还是希望大家声明一下)Dim XY_qi,Xq,Yq,n,m,Shu,Fu,A,X,Y//下面这部分是用来设置各种参数用户定义变量 XY_qi=800/400 输入数字起点坐标格式如:10/10 用户定义变量 Hen=5 输入横向特征点个数用户定义变量 n=1 输入横向递进值用户定义变量 Zong=10 输入纵向特征点个数用户定义变量 m=2 输入纵向递进值用户定义变量Ms=2 显示方式设置:1为弹出窗口模式2为粘帖模式用户定义变量 Color1=FFFFFF 设置字体颜色或者背景颜色//初始化数据部分//把Color1转化为字符串类型Color1=Str(Color1)//........................转换成字符类型//取得"/"在字符串的地几个A=InStr(XY_qi,"/")//.........................搜索字符串中指定字符的位置//取得"/"左边的数据Xq=Left(XY_qi,A-1)//........................返回指定数目的从字符串的左边算起的字符//取得"/"右边的数据Yq=Right(XY_qi,Len(XY_qi)-A)//.........从字符串右边返回指定数目的字符//给Shu,X,Y 赋值取得字符串长度Shu=""X=Xq:Y=Yq//纵向特征点个数循环 Zong 遍//给X赋值X=Xq//横向特征点个数循环 Hen 遍//利用GetPixelColor函数开始找颜色调用外部VBScript子程序 Color2=得到指定点的颜色(X,Y) //找到的颜色值和自己设置的颜色值做比较如果表达式 (Color2<>Color1) 为真,则//如果2个颜色不一样则给Fu赋值"1"Fu="1"否则//否则给Fu赋值为"0"Fu="0"条件结束//没循环1次X的值增大nX=X+n//每循环1次Shu的值连接一个FuShu=Shu&Fu循环结束//每循环一次Y的值增大mY=Y+m循环结束//如果模式选择1在显示数字特征码如果表达式 (Ms=1) 为真,则调用外部VBScript子程序 Color2=得到指定点的颜色(X,Y) //如果模式选择2则把数据写入剪切板否则如果(Ms=2)为真,则调用子程序 Nt调用子程序 Ts条件结束脚本停止运行//写入剪切板子程序子程序 NtShuZi=ShuSet objIE = CreateObject("InternetExplorer.Application")objIE.Navigate("about:blank")objIE.document.parentwindow.clipboardData.SetData "Text", ShuZiobjIE.Quit子程序结束,回到调用处//弹出对话框子程序子程序 Tsset Obj = createobject("WScript.Shell")Hua="数字特征码为:"&vbcr&Shu&vbcr&"请打开记事本粘帖"调用外部VBScript子程序 Color2=得到指定点的颜色(X,Y)子程序结束,回到调用处//打开画图程序,并最大化,调整默认大小再运行脚本就OK。
按键精灵脚本编写命令大全及示例之令狐采学创编之欧阳家百创编
按键精灵学习教程一、欧阳家百(2021.03.07)一、键盘命令(2~5页)二、鼠标命令(5~13页)三、控制命令(13~22页)四、颜色/图像命令(22~28页)五、其他命令(28~35页)五、网游脚本实例(35~最后)一、键盘命令命令名称:GetLastKey 检测上次按键命令功能:检测上次按键命令参数:参数1 整数型,可选:变量名返回值:无脚本例子:(8.x语法) 复制代码1.//脚本运行到这一行不会暂停,调用的时候立即返回,得到调用之前最后一次按下的按键码保存在变量Key里。
2.Key=GetLastKey()3.If Key = 13 Then4. Msgbox "你上次按下了回车键"5.End If//脚本运行到这一行不会暂停,调用的时候立即返回,得到调用之前最后一次按下的按键码保存在变量Key里。
Key=GetLastKey() If Key = 13 Then Msgbox "你上次按下了回车键"End If脚本例子:(7.x语法) 复制代码1.//脚本运行到这一行不会暂停,调用的时候立即返回,得到调用之前最后一次按下的按键码保存在变量Key里。
2.GetLastKey Key3.If Key = 134. Msgbox "你上次按下了回车键"5.EndIf//脚本运行到这一行不会暂停,调用的时候立即返回,得到调用之前最后一次按下的按键码保存在变量Key里。
GetLastKey KeyIf Key = 13 Msgbox "你上次按下了回车键"EndIf命令名称:KeyDown 按住命令功能:键盘按住命令参数:参数1 整数型,键盘虚拟码(8.X支持按键字符)参数2 整数型,次数返回值:无脚本例子:(8.x语法) 复制代码1.//KeyDown、KeyDownS、KeyDownH2.//KeyDownS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用3.//KeyDownH: 硬件模拟方式,仅支持PS(圆口)的键盘点击查看使用硬件模拟方式的注意事项4.KeyDown 65,15.//65是A键的按键码,上面的语句表示按住A键1次6.7.KeyDown "A",18.//上面的支持按键字符,语句表示按住A键1次//KeyDown、KeyDownS、KeyDownH//KeyDownS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用//KeyDownH: 硬件模拟方式,仅支持PS(圆口)的键盘点击查看使用硬件模拟方式的注意事项KeyDown 65,1//65是A键的按键码,上面的语句表示按住A键1次KeyDown "A",1//上面的支持按键字符,语句表示按住A键1次脚本例子:(7.x语法) 复制代码1.//KeyDown、KeyDownS、KeyDownH2.//KeyDownS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用3.//KeyDownH: 硬件模拟方式,仅支持PS(圆口)的键盘点击查看使用硬件模拟方式的注意事项4.KeyDown 65,15.//65是A键的按键码,上面的语句表示按住A键1次命令名称:KeyPress 按键命令功能:键盘按键命令参数:参数1 整数型,键盘虚拟码(8.X支持按键字符)参数2 整数型,次数返回值:无脚本例子:(8.x语法) 复制代码1.//KeyPress、KeyPressS、KeyPressH2.//KeyPressS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用3.//KeyPressH: 硬件模拟方式,仅支持PS(圆口)的键盘点击查看使用硬件模拟方式的注意事项4.KeyPress 65,15.//65是A键的按键码,上面的语句表示按A键1次6.7.KeyPress "A",18.//上面的支持按键字符,语句表示按A键1次//KeyPress、KeyPressS、KeyPressH//KeyPressS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用//KeyPressH: 硬件模拟方式,仅支持PS(圆口)的键盘点击查看使用硬件模拟方式的注意事项KeyPress 65,1//65是A键的按键码,上面的语句表示按A 键1次KeyPress "A",1//上面的支持按键字符,语句表示按A键1次脚本例子:(7.x语法) 复制代码1.//KeyPress、KeyPressS、KeyPressH2.//KeyPressS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用3.//KeyPressH: 硬件模拟方式,仅支持PS(圆口)的键盘点击查看使用硬件模拟方式的注意事项4.KeyPress 65,15.//65是A键的按键码,上面的语句表示按A键1次//KeyPress、KeyPressS、KeyPressH//KeyPressS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用//KeyPressH: 硬件模拟方式,仅支持PS(圆口)的键盘点击查看使用硬件模拟方式的注意事项KeyPress 65,1//65是A键的按键码,上面的语句表示按A键1次命令名称:KeyUp 弹起命令功能:键盘弹起命令参数:参数1 整数型,键盘虚拟码(8.X支持按键字符)参数2 整数型,次数返回值:无脚本例子:(8.x语法) 复制代码1.//KeyUp、KeyUpS、KeyUpH2.//KeyUpS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用3.//KeyUpH: 硬件模拟方式,仅支持PS(圆口)的键盘点击查看使用硬件模拟方式的注意事项4.KeyUp 65,15.//65是A键的按键码,上面的语句表示松开A键1次6.7.KeyUp "A",18.//上面的支持按键字符,语句表示松开A键1次//KeyUp、KeyUpS、KeyUpH//KeyUpS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用//KeyUpH: 硬件模拟方式,仅支持PS(圆口)的键盘点击查看使用硬件模拟方式的注意事项KeyUp 65,1//65是A键的按键码,上面的语句表示松开A键1次KeyUp "A",1//上面的支持按键字符,语句表示松开A键1次脚本例子:(7.x语法) 复制代码1.//KeyUp、KeyUpS、KeyUpH2.//KeyUpS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用3.//KeyUpH: 硬件模拟方式,仅支持PS(圆口)的键盘点击查看使用硬件模拟方式的注意事项4.KeyUp 65,15.//65是A键的按键码,上面的语句表示松开A键1次//KeyUp、KeyUpS、KeyUpH//KeyUpS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB 接口的键盘都可以使用//KeyUpH: 硬件模拟方式,仅支持PS(圆口)的键盘 点击查看使用硬件模拟方式的注意事项KeyUp 65,1//65是A 键的按键码,上面的语句表示松开A 键1次命令名称:WaitKey 等待按任意键 命令功能:等待按任意键 命令参数:参数1 整数型,可选:变量名 返 回 值:无 脚本例子:(8.x 语法) 复制代码 1. Key=WaitKey()2. //脚本运行到这一行会暂停,当用户按下键盘后继续执行,并且把用户的按键码保存在变量Key 里3. If Key = 13 Then4. MessageBox "恭喜你按下了回车键"5. End IfKey=WaitKey() //脚本运行到这一行会暂停,当用户按下键盘后继续执行,并且把用户的按键码保存在变量Key 里If Key = 13 Then MessageBox "恭喜你按下了回车键"End If脚本例子:(7.x 语法) 复制代码 1. WaitKey Key2. //脚本运行到这一行会暂停,当用户按下键盘后继续执行,并且把用户的按键码保存在变量Key 里3. If Key = 134. Msgbox "恭喜你按下了回车键"5. EndIfWaitKey Key//脚本运行到这一行会暂停,当用户按下键盘后继续执行,并且把用户的按键码保存在变量Key 里If Key = 13 Msgbox "恭喜你按下了回车键"EndIf 二、鼠标命令脚本例子:(7.x语法) 复制代码1.VBSCall GetCursorPos(mx,my)2.//把当前鼠标位置的x和y坐标放在变量mx和my中VBSCall GetCursorPos(mx,my) //把当前鼠标位置的x和y坐标放在变量mx 和my中命令名称:GetCursorShape 得到鼠标形状命令功能:得到当前鼠标的形状特征命令参数:参数1 整数型,参数返回值:整数型,鼠标的形状值脚本例子:(8.x语法) 复制代码1.//参数: 0 是6.83之前的版本默认的参数2.//参数: 1 可用于一些在参数0下无法区分鼠标形状代码的情况3.//下面是我们普通的WINDOWS鼠标形状特征4.//不同电脑上鼠标形状特征也许不同,请使用"抓点抓色"功能抓取正确的鼠标形状特征5.Shape1 = 15933502876.//下面是我们访问网页超链接时候的手型鼠标形状7.Shape2 = 10559913298.shape=GetCursorShape(0)9.If shape = shape1 Then10. MessageBox "当前鼠标形状是普通的WINDOWS鼠标"11.ElseIf shape = shape2 Then12. MessageBox "当前鼠标形状是手型鼠标"13.Else14. MessageBox "不认识当前鼠标形状!"15.End If//参数: 0 是6.83之前的版本默认的参数//参数: 1 可用于一些在参数0下无法区分鼠标形状代码的情况//下面是我们普通的WINDOWS鼠标形状特征//不同电脑上鼠标形状特征也许不同,请使用"抓点抓色"功能抓取正确的鼠标形状特征Shape1 = 1593350287//下面是我们访问网页超链接时候的手型鼠标形状Shape2 = 1055991329shape=GetCursorShape(0)If shape = shape1 Then MessageBox "当前鼠标形状是普通的WINDOWS鼠标"ElseIf shape = shape2 Then MessageBox "当前鼠标形状是手型鼠标"Else MessageBox "不认识当前鼠标形状!"End If脚本例子:(7.x语法) 复制代码1.//参数: 0 是6.83之前的版本默认的参数2.//参数: 1 可用于一些在参数0下无法区分鼠标形状代码的情况3.//下面是我们普通的WINDOWS鼠标形状特征4.//不同电脑上鼠标形状特征也许不同,请使用"抓点抓色"功能抓取正确的鼠标形状特征5.Shape1 = 15933502876.//下面是我们访问网页超链接时候的手型鼠标形状7.Shape2 = 10559913298.VBSCall Shape=GetCursorShape(0)9.If shape = shape110. MessageBox 当前鼠标形状是普通的WINDOWS鼠标11.ElseIf shape = shape212. MessageBox 当前鼠标形状是手型鼠标13.Else14. MessageBox 不认识当前鼠标形状!15.EndIf//参数: 0 是6.83之前的版本默认的参数//参数: 1 可用于一些在参数0下无法区分鼠标形状代码的情况//下面是我们普通的WINDOWS鼠标形状特征//不同电脑上鼠标形状特征也许不同,请使用"抓点抓色"功能抓取正确的鼠标形状特征Shape1 = 1593350287//下面是我们访问网页超链接时候的手型鼠标形状Shape2 = 1055991329VBSCall Shape=GetCursorShape(0)If shape = shape1MessageBox 当前鼠标形状是普通的WINDOWS鼠标ElseIf shape = shape2MessageBox 当前鼠标形状是手型鼠标Else MessageBox 不认识当前鼠标形状!EndIf命令名称:GetLastClick 检测上次按过的鼠标键命令功能:检测上一次按下的鼠标代码命令参数:参数1 整数型,可选:变量名返回值:无脚本例子:(8.x语法) 复制代码1.Mouse=GetLastClick()2.If Mouse =32770 Or Mouse =32769 Then3. Msgbox "你按下了鼠标左键"4.End IfMouse=GetLastClick() If Mouse =32770 Or Mouse =32769 Then Msgbox "你按下了鼠标左键"End If脚本例子:(7.x语法) 复制代码1.GetLastClick Mouse2.If Mouse =32770 Or Mouse =327693. Msgbox "你按下了鼠标左键"4.EndIf命令名称:LeftClick 左键单击命令功能:模拟点击鼠标左键命令参数:参数1 整数型,次数返回值:无脚本例子:(8.x语法) 复制代码1.//LeftClick、LeftClickS、LeftClickH2.//LeftClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//LeftClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.LeftClick 55.//在当前鼠标的位置单击鼠标左键5次//LeftClick、LeftClickS、LeftClickH//LeftClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用//LeftClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项LeftClick 5//在当前鼠标的位置单击鼠标左键5次脚本例子:(7.x语法) 复制代码1.//LeftClick、LeftClickS、LeftClickH2.//LeftClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//LeftClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.LeftClick 55.//在当前鼠标的位置单击鼠标左键5次//LeftClick、LeftClickS、LeftClickH//LeftClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用//LeftClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项LeftClick 5//在当前鼠标的位置单击鼠标左键5次命令名称:LeftDoubleClick 左键双击命令功能:模拟双击鼠标左键命令参数:参数1 整数型,次数返回值:无脚本例子:(8.x语法) 复制代码1.//LeftDoubleClick、LeftDoubleClickS、LeftDoubleClickH]2.//LeftDoubleClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//LeftDoubleClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.LeftDoubleClick 55.//在当前鼠标的位置双击鼠标左键5次//LeftDoubleClick、LeftDoubleClickS、LeftDoubleClickH]//LeftDoubleClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB 接口的鼠标都可以使用//LeftDoubleClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项LeftDoubleClick 5//在当前鼠标的位置双击鼠标左键5次脚本例子:(7.x语法) 复制代码1.//LeftDoubleClick、LeftDoubleClickS、LeftDoubleClickH]2.//LeftDoubleClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//LeftDoubleClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.LeftDoubleClick 55.//在当前鼠标的位置双击鼠标左键5次//LeftDoubleClick、LeftDoubleClickS、LeftDoubleClickH]//LeftDoubleClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB 接口的鼠标都可以使用//LeftDoubleClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项LeftDoubleClick 5//在当前鼠标的位置双击鼠标左键5次命令名称:LockMouse 锁定鼠标位置命令功能:锁定鼠标位置,用户将不能通过移动鼠标而改变鼠标位置,而脚本仍可以改变鼠标位置命令参数:无返回值:无脚本例子:(8.x语法) 复制代码1.//在脚本开始的时候使用这个命令,可以有效防止用户误触鼠标引起脚本执行出错2.LockMouse3.Do4. Delay 10005.Loop//在脚本开始的时候使用这个命令,可以有效防止用户误触鼠标引起脚本执行出错LockMouseDo Delay 1000Loop脚本例子:(7.x语法) 复制代码1.//在脚本开始的时候使用这个命令,可以有效防止用户误触鼠标引起脚本执行出错2.LockMouse3.While True4. Delay 10005.EndWhile命令名称:MiddleClick 中键单击命令功能:模拟点击鼠标中键命令参数:参数1 整数型,次数返回值:无脚本例子:(8.x语法) 复制代码1.//MiddleClick、MiddleClickS、MiddleClickH2.//MiddleClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//MiddleClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.MiddleClick 55.//在当前鼠标的位置单击鼠标中键5次//MiddleClick、MiddleClickS、MiddleClickH//MiddleClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用//MiddleClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项MiddleClick 5//在当前鼠标的位置单击鼠标中键5次脚本例子:(7.x语法) 复制代码1.//MiddleClick、MiddleClickS、MiddleClickH2.//MiddleClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//MiddleClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.MiddleClick 55.//在当前鼠标的位置单击鼠标中键5次命令名称:MouseWheel 鼠标滚轮命令功能:滚动鼠标滚轮命令参数:参数1 整数型,滚动量返回值:无脚本例子:(8.x语法) 复制代码1.//如果滚动量为正,向上滚动;否则向下滚动.2.//仅支持Windows 2000以上的操作系统.3.MouseWheel 14.//把鼠标滚轮向上滚动1格//如果滚动量为正,向上滚动;否则向下滚动.//仅支持Windows 2000以上的操作系统.MouseWheel 1//把鼠标滚轮向上滚动1格脚本例子:(7.x语法) 复制代码1.//如果滚动量为正,向上滚动;否则向下滚动.2.//仅支持Windows 2000以上的操作系统.3.MouseWheel 14.//把鼠标滚轮向上滚动1格命令名称:MoveR 鼠标相对移动命令功能:鼠标相对移动到命令参数:参数1 整数型,X距离参数2 整数型,Y距离返回值:无脚本例子:(8.x语法) 复制代码1.//MoveR、MoveRS、MoveRH2.//MoveRS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//MoveRH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.//当前鼠标在(100,100)点,使用下面语句5.MoveR 200,3006.//之后,鼠标就被移到了(100+200,100+300)处,也就是坐标(300,400)处7.//提示:使用硬件模拟方式不能碰键盘鼠标,否则会导致出错//MoveR、MoveRS、MoveRH//MoveRS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用//MoveRH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项//当前鼠标在(100,100)点,使用下面语句MoveR 200,300//之后,鼠标就被移到了(100+200,100+300)处,也就是坐标(300,400)处//提示:使用硬件模拟方式不能碰键盘鼠标,否则会导致出错脚本例子:(7.x语法) 复制代码1.//MoveR、MoveRS、MoveRH2.//MoveRS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//MoveRH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.//当前鼠标在(100,100)点,使用下面语句5.MoveR 200,3006.//之后,鼠标就被移到了(100+200,100+300)处,也就是坐标(300,400)处7.//提示:使用硬件模拟方式不能碰键盘鼠标,否则会导致出错//MoveR、MoveRS、MoveRH//MoveRS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用//MoveRH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项//当前鼠标在(100,100)点,使用下面语句MoveR 200,300//之后,鼠标就被移到了(100+200,100+300)处,也就是坐标(300,400)处//提示:使用硬件模拟方式不能碰键盘鼠标,否则会导致出错命令名称:MoveTo 鼠标移动命令功能:移动鼠标到命令参数:参数1 整数型,X坐标参数2 整数型,Y坐标返回值:无脚本例子:(8.x语法) 复制代码1.//MoveTo、MoveToS、MoveToH2.//MoveToS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//MoveToH: 硬件模拟方式,仅支持PS(圆口)的鼠标4.MoveTo 100,2005.//把鼠标移动到(100,200)这个点上6.intX=507.intY=1508.MoveTo intX,intY9.//把鼠标移动到(intX,intY)这个点上,需要5.50以上版本支持.//MoveTo、MoveToS、MoveToH//MoveToS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用//MoveToH: 硬件模拟方式,仅支持PS(圆口)的鼠标MoveTo 100,200//把鼠标移动到(100,200)这个点上intX=50intY=150MoveTo intX,intY//把鼠标移动到(intX,intY)这个点上,需要5.50以上版本支持.脚本例子:(7.x语法) 复制代码1.//MoveTo、MoveToS、MoveToH2.//MoveToS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//MoveToH: 硬件模拟方式,仅支持PS(圆口)的鼠标4.MoveTo 100,2005.//把鼠标移动到(100,200)这个点上6.intX=507.intY=1508.MoveTo intX,intY9.//把鼠标移动到(intX,intY)这个点上,需要5.50以上版本支持.命令名称:RestoreMousePos 恢复上次保存的鼠标位置命令功能:保存当前鼠标位置命令参数:无返回值:无脚本例子:(8.x语法) 复制代码1.SaveMousePos2.//保存当前鼠标位置3.Delay 1004.MoveTo 500,205.Delay 1006.RestoreMousePos7.//将鼠标移动到上一次保存的鼠标位置8.//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,9.//这样脚本执行后鼠标的位置就不会变化SaveMousePos//保存当前鼠标位置Delay 100MoveTo 500,20Delay100RestoreMousePos//将鼠标移动到上一次保存的鼠标位置//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,//这样脚本执行后鼠标的位置就不会变化脚本例子:(7.x语法) 复制代码1.SaveMousePos2.//保存当前鼠标位置3.Delay 1004.MoveTo 500,205.Delay 1006.RestoreMousePos7.//将鼠标移动到上一次保存的鼠标位置8.//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,9.这样脚本执行后鼠标的位置就不会变化SaveMousePos//保存当前鼠标位置Delay 100MoveTo 500,20Delay100RestoreMousePos//将鼠标移动到上一次保存的鼠标位置//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,这样脚本执行后鼠标的位置就不会变化命令名称:RightClick 右键单击命令功能:模拟点击鼠标右键命令参数:参数1 整数型,次数返回值:无脚本例子:(8.x语法) 复制代码1.//RightClick、RightClickS、RightClickH2.//RightClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//RightClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.RightClick 55.//在当前鼠标的位置单击鼠标右键5次//RightClick、RightClickS、RightClickH//RightClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用//RightClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项RightClick 5//在当前鼠标的位置单击鼠标右键5次脚本例子:(7.x语法) 复制代码1.//RightClick、RightClickS、RightClickH2.//RightClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用3.//RightClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项4.RightClick 55.//在当前鼠标的位置单击鼠标右键5次//RightClick、RightClickS、RightClickH//RightClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用//RightClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标点击查看使用硬件模拟方式的注意事项RightClick 5//在当前鼠标的位置单击鼠标右键5次命令名称:SaveMousePos 保存当前鼠标所在位置命令功能:保存当前鼠标位置命令参数:无返回值:无脚本例子:(8.x语法) 复制代码1.SaveMousePos2.//保存当前鼠标位置3.Delay 1004.MoveTo 500,205.Delay 1006.RestoreMousePos7.//将鼠标移动到上一次保存的鼠标位置8.//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,9.//这样脚本执行后鼠标的位置就不会变化SaveMousePos//保存当前鼠标位置Delay 100MoveTo 500,20Delay100RestoreMousePos//将鼠标移动到上一次保存的鼠标位置//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,//这样脚本执行后鼠标的位置就不会变化脚本例子:(7.x语法) 复制代码1.SaveMousePos2.//保存当前鼠标位置3.Delay 1004.MoveTo 500,205.Delay 1006.RestoreMousePos7.//将鼠标移动到上一次保存的鼠标位置8.//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,9. 这样脚本执行后鼠标的位置就不会变化SaveMousePos//保存当前鼠标位置Delay 100MoveTo 500,20Delay100RestoreMousePos//将鼠标移动到上一次保存的鼠标位置//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,这样脚本执行后鼠标的位置就不会变化命令名称:UnlockMouse 解除锁定鼠标位置命令功能:解除LockMouse 命令对鼠标位置的锁定 命令参数:无 返 回 值:无 脚本例子:(8.x 语法)复制代码 1. 脚本例子:(7.x 语法) 复制代码 1. //如果用户使用了LockMouse 命令而没有使用UnlockMouse 命令,按键精灵会在脚本结束时自动解除锁定2. UnlockMouse//如果用户使用了LockMouse 命令而没有使用UnlockMouse 命令,按键精灵会在脚本结束时自动解除锁定UnlockMouse命令名称:WaitClick 按任意鼠标键继续 命令功能:脚本执行到这一句暂停,按下任意鼠标键之后继续 命令参数:参数1 整数型,可选:变量名 返 回 值:无 脚本例子:(8.x 语法) 复制代码 1. last_click=WaitClick()2. MessageBox "您按下了" & last_clicklast_click=WaitClick() MessageBox "您按下了" & last_click脚本例子:(7.x 语法) 复制代码 1. WaitClick last_click2. MessageBox "您按下了" & last_clickWaitClick last_clickMessageBox "您按下了" & last_click三、控制命令返回值:无脚本例子:(8.x语法) 复制代码1.Call 子程序("我是子程序,被你调用了")2.EndScript3.//支持中文名变量4.Sub 子程序(啊)5. Msgbox 啊6.End Sub7.//定义一个过程,可以在脚本中调用这个过程Call 子程序("我是子程序,被你调用了")EndScript//支持中文名变量Sub 子程序(啊) Msgbox 啊End Sub//定义一个过程,可以在脚本中调用这个过程脚本例子:(7.x语法)复制代码命令名称:Do 循环命令功能:条件循环命令参数:参数1 条件型,循环条件返回值:无脚本例子:(8.x语法) 复制代码1.例子1:2.//支持Exit Do 命令退出循环3.i=04.Do While i=05. Msgbox "我停不下来啦!!快住手"6.Loop7.//当循环条件成立的时候,反复执行循环体8.9.10.例子2:11.i=012.Do Until i=013. Msgbox "为什么没有循环到我呢?"14.Loop15.Msgbox "循环结束"16.//当循环条件成立的时候,离开循环体17.18.19.例子3:20.i=021.Do Until i=122. Msgbox "我停不下来啦!!快住手"23.Loop24.//当循环条件不成立的时候,反复执行循环体25.26.27.例子4:28.n=029.Do While true30. Msgbox "我将循环10次停下来!!"31. If n>=10 Then32. //当循环条件成立的时候,离开循环体33. Exit do34. End if35. n=n+136.Loop37.Msgbox n & "次"38.39.40.例子5:41.i = 042.Do43. MessageBox "ok"44.Loop While i <> 045.//条件放后面,前面的循环内容可以执行一次!例子1://支持Exit Do 命令退出循环i=0Do While i=0 Msgbox "我停不下来啦!!快住手"Loop//当循环条件成立的时候,反复执行循环体例子2:i=0Do Until i=0 Msgbox "为什么没有循环到我呢?"LoopMsgbox "循环结束"//当循环条件成立的时候,离开循环体例子3:i=0Do Until i=1 Msgbox "我停不下来啦!!快住手"Loop//当循环条件不成立的时候,反复执行循环体例子4:n=0Do While true Msgbox "我将循环10次停下来!!" If n>=10 Then //当循环条件成立的时候,离开循环体 Exit do End ifn=n+1LoopMsgbox n & "次"例子5:i = 0Do MessageBox "ok"Loop While i <> 0//条件放后面,前面的循环内容可以执行一次!脚本例子:(7.x语法) 复制代码1.无命令名称:For 循环命令功能:循环一定次数命令参数:参数1 整数型,循环次数返回值:无脚本例子:(8.x语法) 复制代码1.例子1:2.//支持Exit For 命令退出循环3.For i=0 To 94. Delay 1005.Next6.//循环10次7.8.例子2:9.//支持Exit For 命令退出循环10.For 10。
游戏辅助制作教程:用按键精灵开发计算距离自己最近的怪物包裹金矿坐标的脚本
游戏辅助制作教程:用按键精灵开发计算距离自己最近的怪物/包裹/金矿坐标的脚本知识点引入:数学知识:已知坐标求距离已知坐标A(X1,Y1)、B(X2,Y2),那么AB之间的距离有一个计算公式:距离=sqr((X1-X2)^2+(Y1-Y2)^2)即:距离等于两个坐标的横坐标之差的平方,加上纵坐标之差的平方,两个平方相加,再取它们的平方根。
算法知识:冒泡排序介绍:冒泡排序(Bubble Sort),这个算法的名字由来是因为越大的元素会经由交换慢慢“浮”到数列的顶端,像鱼吐泡泡一样。
同样,也可以让越大的元素沉到数列底部。
算法原理:冒泡排序算法的运作如下:(从后往前)1.比较相邻的元素。
如果第一个比第二个大,就交换他们两个。
2.对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。
在这一点,最后的元素应该会是最大的数。
3.针对所有的元素重复以上的步骤,除了最后一个。
4. 4.持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。
思路解析:1.获取到人物的坐标,以及各个物品的坐标,存入数组;2.计算人物距离各个物品的坐标距离,存入数组;3.通过各个坐标距离的比较,从而获取到最小距离(距离人物最近的物品)以及最大距离(距离人物最远的物品),输出相对应的物品坐标。
大神代码段://注:coordinate为物品坐标,range为距离,Arr为物品坐标的数组,Ub 为物品坐标的最大下界x = 300:y = 330'人物的坐标coordinate = "200,300|10,20|60,800|500,321|456,789|421,6|300,320|320,290"'物品(怪物)的坐标Arr = split(coordinate, "|")Ub = UBound(Arr)'range(Ub)用来存储每个物品离人物的距离, xx(Ub)用来存储每个物品的X坐标, yy(Ub)用来存储每个物品的Y坐标Redim range(Ub), xx(Ub), yy(Ub)'计算所有的物品坐标,离人物的距离,存在range数组里For i = 0 To Ubx1 = split(Arr(i), ",")(0) : y1 = split(Arr(i), ",")(1)xx(i) = x1 : yy(i) = y1range(i) = sqr((x1 - x) ^ 2 + (y1 - y) ^ 2)Next'通过冒泡排序,将人物离每个物品的距离,按照从小到大的顺序排列,并根据距离的排序,相应的调整物品的X坐标和Y坐标在数组中的位置。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
学习游戏脚本制作:按键精灵键鼠同步器源码分享
来源:按键学院【按键精灵】小编之前也有使用过其它大牛编写的游戏同步的脚本,突然间对于它是如何实现同步感到十分好奇,我们一起来研究看看,同步到底是怎么实现的吧~
NO.1-同步的前提
前提
1同步的两个窗口需要是同一个应用窗口,并且窗口大小要相同
2同步窗口可以接收到按键的键鼠发送信息
3同步的窗口支持后台键鼠操作
NO.2-本节例子及其能实现的功能
例子
1画图工具,实现同步画图
2记事本,实现同步删除内容
功能①键鼠同步
②支持组合键
NO.3-思路大剖析
思路步骤
1获取主窗口和被同步窗口句柄
● WaitKey 命令等待键盘按下
○按下F6则获取当前鼠标指向的窗口句柄,作为主窗口句柄。
○按下F7 则获取当前鼠标指向的窗口句柄,作为同步窗口句柄。
●用Do循环来等待按键,当主窗口句柄和同步窗口句柄都获取到时,退出Do循环
●代码
Do
Key = WaitKey()
If Key = 117 Then
主窗口= Plugin.Window.MousePoint()
End If
If Key = 118 Then
同步窗口= Plugin.Window.MousePoint()
End If
Delay 500
If 主窗口<> 0 and 同步窗口<> 0 Then
Exit Do
End If
Loop
2设置两个窗口的窗口大小一致
●窗口大小一致,同步的时候鼠标才能移动到正确的位置。
●代码
Call Plugin.Window.Size(主窗口,800,600)
Call Plugin.Window.Size(同步窗口,800,600)
3获取主窗口的左上角坐标
●GetWindowRect 命令获取主窗口的左上角坐标
●代码
sRect = Plugin.Window.GetWindowRect(主窗口)
dim MyArray
MyArray = Split(sRect, "|")
L = Clng(MyArray(0)): T = Clng(MyArray(1))
4获取当前鼠标在主窗口的位置
●GetCursorPos命令获取当前鼠标位置
●代码
GetCursorPos mx, my
5计算主窗口内当前鼠标位置和窗口左上角距离
●公式:当前鼠标位置减去窗口左上角坐标值( mx-L, my-T)
6开始同步
●被同步窗口,使用按键后台键鼠命令,将鼠标移动到和主窗口相同的位置
(按键后台命令鼠标移动是以窗口客户区左上角坐标为基点)
●代码
Call Plugin.Bkgnd.MoveT o(同步窗口, mx-L, my-T)
●在主窗口内按下任意键时,同步窗口也执行同样的操作
●代码
Key = GetLastKey()
Call Plugin.Bkgnd.KeyPress(同步窗口, Key)
NO.4-代码
代码
Do
Key = WaitKey()
If Key = 117 Then
主窗口= Plugin.Window.MousePoint()
//Call Plugin.Window.Size(主窗口,800,600)
End If
If Key = 118 Then
同步窗口= Plugin.Window.MousePoint()
// Call Plugin.Window.Size(同步窗口,800,600)
End If
Delay 500
If 主窗口<> 0 and 同步窗口<> 0 Then
Exit Do
End If
Loop
Do
Mouse = GetLastClick()
If Mouse = 32769 Then //鼠标左键按下时ASCII码为 32769
sRect = Plugin.Window.GetWindowRect(主窗口)
dim MyArray
MyArray = Split(sRect, "|")
L = Clng(MyArray(0)): T = Clng(MyArray(1))
GetCursorPos mx, my
Delay 10
Call Plugin.Bkgnd.LeftDown(同步窗口, mx-L, my-T)
Delay 10
Do
Mouse = GetLastClick()
If Mouse = 0 Then //鼠标无点击操作
GetCursorPos mx, my
Delay 10
Call Plugin.Bkgnd.MoveT o(同步窗口, mx-L, my-T)
Delay 10
End If
If Mouse = 32770 Then //鼠标左键弹起时ASCII码为 32770
GetCursorPos mx, my
Delay 10
Call Plugin.Bkgnd.LeftUp(同步窗口, mx-L, my-T)
Exit Do
End If
Loop
End If
Key = GetLastKey()
Call Plugin.Bkgnd.KeyPress(同步窗口, Key)
Loop
NO.5-效果演示
演示
画图
记事本
注意画图和记事本,获取窗口句柄的时候请点击白白的客户区进行获取,因为我们是要对它的客户区进行操作
NO.6-温馨小提示
温馨小提示
*游戏窗口中的同步,需要注意几个窗口中人物的朝向和坐标是否相同
*如果坐标朝向不同,一个窗口里的角色往西边走一个往北边走,就无法达到预期同步任务的效果。