按键精灵的数据类型
制作游戏辅助必备算法:按键精灵快速排序(比冒泡更快更有效率的算法)
学习制作游戏辅助必备算法——按键精灵快速排序〔比冒泡更快更有效率的算法〕来源:按键学院【按键精灵】冒泡排序为O(N^2),在排序过程中其实是效率较低的。
在扫拍卖或者其他需要比拼速度的时候,时间就是金钱~越快越能抢占先机。
今天我们介绍另一种更快更有效率的排序——快速排序,时间复杂度为O(n*logn)。
快速排序的算法思想快速排序采用了一种分治的策略,通常称其为分治法(Divide-and-ConquerMethod)。
该方法的基本思想是:1.先从数列中取出一个数作为基准数。
〔不要被这个名词吓到了,就是一个用来参照的数,待会你就知道它用来做啥的了〕。
2.分区过程,将比这个数大的数全放到它的右边,小于或等于它的数全放到它的左边。
3 . 再对左右区间重复第二步,直到各区间只有一个数。
白话讲解算法:假设我们现在对“6 1 2 7 9 3 4 5 10 8”这个10个数进行排序。
就让第一个数6作为基准数吧。
接下来,需要将这个序列中所有比基准数大的数放在6的右边,比基准数小的数放在6的左边。
方法其实很简单:分别从初始序列“6 1 2 7 9 3 4 5 10 8”两端开始“探测”。
先从右往左找一个小于6的数,再从左往右找一个大于6的数,然后交换他们。
这里可以用两个变量i和j,分别指向序列最左边和最右边。
我们为这两个变量起个好听的名字“哨兵i”和“哨兵j”。
刚开始的时候让哨兵i指向序列的最左边〔即i=1〕,指向数字6。
让哨兵j指向序列的最右边〔即=10〕,指向数字。
首先哨兵j开始出动。
因为此处设置的基准数是最左边的数,所以需要让哨兵j 先出动,这一点非常重要〔请自己想一想为什么〕。
哨兵j一步一步地向左挪动〔即j--〕,直到找到一个小于6的数停下来。
接下来哨兵i再一步一步向右挪动〔即i++〕,直到找到一个数大于6的数停下来。
最后哨兵j停在了数字5面前,哨兵i停在了数字7面前。
现在交换哨兵i和哨兵j所指向的元素的值。
按键精灵_控制命令
按键精灵_控制命令命令名称IfColor 颜⾊判断命令功能判断屏幕某点的颜⾊命令参数参数1 整数型,屏幕X坐标参数2 整数型,屏幕Y坐标参数3 字符串型,颜⾊16进制值参数4 整数型,判断条件返回值⽆脚本例⼦按键精灵8及以上语法复制代码1.例⼦1:2.//判断条件(0:等于 1:不等于 2:近似等于)3.IfColor 860,27,"e1b072",0 Then4. Msgbox "颜⾊等于"5.Else6. Msgbox "颜⾊不等于"7.End If8.//判断坐标点(860,27)的颜⾊是否等于e1b072 9.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及以上语法复制代码1.//判断条件(0:等于 1:不等于 2:近似等于)2.IfColor 860,27,e1b072,03. Msgbox "颜⾊等于"4.Else5. Msgbox "颜⾊不等于"6.EndIf7.//判断坐标点(860,27)的颜⾊是否等于e1b072命令名称For 循环命令功能循环⼀定次数命令参数参数1 整数型,循环次数返回值⽆脚本例⼦按键精灵8及以上语法复制代码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及以上语法复制代码1.For 102.Delay 1003. EndFor4. //循环10次命令名称If 如果..则命令功能判断表达式命令参数参数1 条件型,表达式返回值⽆脚本例⼦按键精灵8及以上语法复制代码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及以上语法复制代码1. i=02. If i=03. Msgbox "条件判断符合被通过!!"4. EndIf5. //通过判断表达式的取值,来执⾏后⾯的动作或控制命令名称 While 如果..则循环命令功能条件循环命令参数参数1 条件型,循环条件返回值⽆脚本例⼦按键精灵8及以上语法复制代码1.i=02.While i=03. Msgbox "我停不下来啦!!快住⼿"4.Wend5.//当循环条件成⽴的时候,反复执⾏循环体脚本例⼦按键精灵7及以上语法复制代码1.i=02.While i=03. Msgbox "我停不下来啦!!快住⼿"4.EndWhile5.//当循环条件成⽴的时候,反复执⾏循环体命令名称Goto 跳转到标记命令功能跳转到Rem标记处命令参数参数1 字符串型,标号返回值⽆脚本例⼦按键精灵8及以上语法复制代码1.Goto标记2.Delay 1003.Rem标记4.Msgbox "你直接跳到这⾥了!!,上⾯的延迟没有被执⾏!!"5.//跳转语句,可以跳转到rem标记过的标记处继续执⾏脚本例⼦按键精灵7及以上语法复制代码1.Goto标记2.Delay 1003.Rem标记4.Msgbox "你直接跳到这⾥了!!,上⾯的延迟没有被执⾏!!"5.//跳转语句,可以跳转到rem标记过的标记处继续执⾏命令名称Call 调⽤过程命令功能调⽤过程命令参数参数1 字符串型,过程名返回值⽆脚本例⼦按键精灵8及以上语法复制代码1.Call⼦程序("我是⼦程序,被你调⽤了")2.EndScript3.//⽀持中⽂名变量4.Sub⼦程序(啊)5. Msgbox 啊6.End Sub7.//定义⼀个过程,可以在脚本中调⽤这个过程命令名称Rem 标记/注释命令功能标记命令可当注释命令参数参数1 字符串型,⽂字返回值⽆脚本例⼦按键精灵8及以上语法复制代码1.//不⽀持数字开头的和符号作为标记名2.//标记命令.即可当注释,也可以为Goto跳转指令作标记3.Rem脚本开始脚本例⼦按键精灵7及以上语法复制代码1.//标记命令.即可当注释,也可以为Goto跳转指令作标记2.Rem脚本开始命令名称Sub ⼦程序命令功能定义⼀个过程命令参数参数1 字符串型,过程名返回值⽆按键精灵8及以上语法1.//⽀持Exit Sub 命令退出⼦程序过程2.Call⼦程序()3.EndScript4.Sub⼦程序()5. Msgbox "我是⼦程序,被你调⽤了"6.End Sub7.//定义⼀个过程,可以在脚本中调⽤这个过程脚本例⼦按键精灵7及以上语法复制代码1.Gosub⼦程序2.EndScript3.Sub⼦程序4. Msgbox "我是⼦程序,被你调⽤了"5.Return⼦程序6.//定义⼀个过程,可以在脚本中调⽤这个过程命令名称Function 函数命令功能函数命令参数多类型,多参数返回值多类型脚本例⼦按键精灵8及以上语法复制代码1.//⽀持Exit Function 命令退出函数过程2.Msgbox 函数过程("我是函数,被你调⽤了")3.EndScript4.Function函数过程(a)5.函数过程=a6.End Function7.//定义⼀个函数过程,可以在脚本中调⽤这个函数命令名称Select 情况条件选择命令功能根据情况选择条件判断命令参数参数1 条件型,情况返回值⽆按键精灵8及以上语法1.//不⽀持判断语句如:Case a>0/doc/a1cb124269eae009581becc8.html erVar 变量=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命令名称Do 循环命令功能条件循环命令参数参数1 条件型,循环条件返回值⽆脚本例⼦按键精灵8及以上语法复制代码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.//条件放后⾯,前⾯的循环内容可以执⾏⼀次!命令名称EndScript 脚本停⽌运⾏命令功能强制结束脚本的执⾏命令参数⽆返回值⽆脚本例⼦按键精灵8及以上语法复制代码1.EndScript2.//在按键精灵8及以上版本中3.//结束脚本线程的执⾏,在主线程执⾏时主脚本停⽌,其他线程仍然继续运⾏。
按键精灵脚本制作教程课件
总结词
函数与子程序是按键精灵脚本中非常重 要的概念,它们能帮助你编写出更加模 块化和复用的脚本代码。
VS
详细描述
在按键精灵中,函数和子程序都是可重用 的代码块。函数是一段被命名的代码块, 可以被反复调用;子程序则是一段无命名 的代码块,不能被单独调用,但可以作为 函数内部的一部分。
函数与子程序
示例代码 ```vbscript ' 定义一个函数
案例四:多媒体处理脚本制作
01
3. 制作流程
02
a. 分析需求:明确需要处理的多媒体 文件类型和数量。
03
b. 选择多媒体处理功能:根据需求选 择相应的功能,如图片批量转换、音 频裁剪等。
案例四:多媒体处理脚本制作
c. 配置参数
根据文件类型和数量配置参 数,如输出格式、裁剪尺寸 等。
d. 调试脚本
d. 运行脚本
测试脚本在实际网站中的运行效果,获取所 需数据。
案例四:多媒体处理脚本制作
• 总结词:通过按键精灵实现多媒体处理,提高工作效率。
案例四:多媒体处理脚本制作
详细描述
1. 多媒体处理的意义:快速批量处理 多媒体文件,如图片、音频、视频等 。
2. 按键精灵的多媒体处理功能:支持 多种多媒体格式处理,可实现批量转 换、裁剪等操作。
函数与子程序
• Function AddNumbers(x, y)
函数与子程序
01
Result = x + y
02
End Function
03
' 使用函数
函数与子程序
01
x = 10
02
y = 20
03
z = AddNumbers(x, y)
(完整word版)按键精灵Android版MQ语言基础说明
按键精灵Android版:MQ 语言 MQ是按键精灵针对旗下移动产品而设计的全新脚本开发语言。
语言支持全中文阅读脚本,上手简单,易学易用。
MQ语言的基本特性如下:1 数据类型在MQ语言里,数据类型包括如下5种:Null : 不包含任何有效数据;Boolean:仅包含True和False两个常数;Integer:32位有符号整数,范围为-2,147,483,648 到2,147,483,647 之间;Float:双精度浮点数,负数范围从-1.79769313486232E308 到-4.94065645841247E-324,正数范围从4.94065645841247E-324 到1.79769313486232E308;String : 字符串。
MQ语言为动态类型,即定义变量时并不指定类型,在给变量赋值时才确定类型,并且类型随时可以通过赋值操作而变化。
常量MQ语言中,用户可直接在脚本内写入没有命名的常量的,具体类型与写法如下:整数型:可直接输出整数数字,如100;亦可加&H前缀,表明该常量为16进制数字,如&H64。
浮点型:可直接输出小数点数字,如3.1415;亦可采用E分隔整数和底数部分,如314.15e-2。
字符串型:凡采用一对双引号包含的内容均被视为字符串型常量。
其中允许使用转义字符包括有:'\b' (退格),'\f' (表单),'\n' (换行),'\r' (回车),'\t' (横向制表),'\v' (纵向制表),'\\' (反斜杠),'\" '(双引号),以及'\' '(单引号)。
另外也支持反斜杠加数字来描述一个字符。
(注意,如果需要在这种描述方法后接一个是数字的字符,那么反斜杠后必须写满三个数字)。
MQ语言中有一下已经预先定义好的常量,目标包括True和False(不区分大小写),今后还会增加。
按键精灵的数据类型
按键精灵/按键精灵教程/论坛/数据类型一、什么是数据数据:在计算机系统中,各种字母、数字符号的组合、语音、图形、图像等统称为数据,是程序处理的最小对象。
二、数据类型Q语言里的数据类型从数据结构来区分可分为:布尔(逻辑)型、数值型、字符型、字符串型、日期时间型、可变型。
(1)布尔(逻辑)型布尔(boolean)数据类型 boolean变量存储为 16 位(2 个字节)的数值形式,但只能是True 或是 False。
布尔变量的值显示为 True 或 False。
使用关键字 True 与 False 可将布尔变量赋值为这两个状态中的一个。
此数据应用于逻辑判断。
当其他类型数据转换为逻辑型数据时,0会转成False,而其他的值则变成 True。
当逻辑型数据转换为整型数据时,True转成“-1”,False转成“0”。
(2)数值型数值型又包括:字节型、短整型、长整型、小数型、单精度型、双精度型。
数值类型顾名思义就是以0-9以及小数点组成的一串数字。
不同的类型有不同的取值范围。
(3)字符型、字符串型字符是指计算机中使用的字母、数字、字和符号,包括:1、2、3、A、B、C、等等。
1个汉字字符存储需要2个字节,1个英文字符存储需要1个字节。
例如在VB中求字符串的长度时,len(str(1234))=4,len(1234)=2。
符串串是由零个或多个字符组成的有限序列。
一般记为 s='a1aan'(n>=0)。
它是编程语言中表示文本的数据类型。
(4)日期时间型日期时间类型可以保存日期时间、只保存日期或只保存时间。
日期类型只保存日期,而时间类型只保存时间。
日期和时间类型比日期时间类型有效,因此在不需要日期时间类型所提供的附加功能性和灵活性的情况下,可以使用它们。
可以使用日期时间字面值结构直接创建日期时间型值,支持许多不同的格式。
CDate ("Aug 6, 1969")CDate (1969, 8, 6)。
零基础学按键精灵(第三章)
运算符与表达式(运算符)此文为小妖首发于按键精灵论坛。
借百度平台转发,希望能够帮到学按键的朋友。
说完数据类型,本来该说说变量定义的。
不过,按键变量定义很简单。
只要遵循变量名定义就行了。
如果不清楚的直接看官方教程就行了。
小妖就不再啰嗦。
而数组的定义,小妖也有过帖子,这儿直接把帖子贴出来。
不清楚的可以去看看。
关于数组定义问题(仅限于新手对数组定义不明白者,不牵扯高级运用)这一期,我们来介绍运算符与表达式。
因为较长,所以分两小节。
第一小节介绍的是运算符,第二小节介绍表达式。
其实这章知识非常多,也非常重要。
我这儿只能作为介绍,而不能作为学习课程。
希望大家知道学习要点之后,自己增加知识点的了解以及具体到按键精灵上调试运用。
这样,才能达到学习的目的。
运算符:运算符用于执行程序代码运算,会针对一个以上操作数项目来进行运算。
例如:2+3,其操作数是2和3,而运算符则是“+”。
(百度百科)运算符主要分为:算术运算符。
字符串运算符(连接运算符)。
关系运算符(比较运算符)。
赋值运算符。
逻辑运算符。
算数运算符:主要有:乘法(*),除法(/),加法(+),减法(-),整除(\),求余(MOD),乘方(^),负号(-)。
优先级高到低为(并排为同级):负号(-);求幕运算符(^);乘法(*),除法(/);整除(\);求余(MOD);加法(+),减法(-)。
乘方、负号和四则运算(^、+、-、*、/)的运算符大家应该知道。
这儿说整除和求余(\、MOD)。
整除(\):用于两个数相除并返回以整数形式表示的结果。
语法result = number1\number2 (按键运算符说明)例:1.TracePrint 5\2 // 5\2值为2求余(MOD): 用于两个数值相除并返回其余数。
语法result = number1 Mod number2(按键运算符说明)例:1.TracePrint 5 MOD 2 // 5 MOD 2 值为1字符串运算符(连接运算符):连接运算符是指可以将一个或多个文连接为一个组合文本的运算符号。
零基础学按键精灵(第二章)
数据类型此文为小妖首发于按键精灵论坛。
借百度平台转发,希望能够帮到学按键的朋友。
其实,第一期已经跨越了。
也就是说,本来第一期应该放在后面的。
但是,为了直观的让新手朋友知道自己缺乏的知识,我把它作为了第一期。
第二期,我们来介绍数据类型。
实际来说,按键的数据类型不严谨。
比如我们定义一个变量直接是:1.Dim x这样就已经定义了x 这个变量了。
数组变量如下:1.Dim x(2)这儿我们定义了数组名称是x,数组最大下标是2的一个数组变量。
其中的元素包括:x(0), x(1), x(2)这三个。
所以,实际上,我们直接定义了一组一共3个变量的数组。
这样定义的好处,后面做循环体的时候用得上。
到时候再细说。
这儿的0,1,2叫做下标。
2是最大下标。
但是,如果是VB,那么定义变量,就需要定义其数据类型。
比如,定义字符串类型的变量。
应该是这样:Dim x as String上面只是说明,按键为了让新手更加快速掌握按键,所有把数据类型这个东西忽略了。
在定义变量的时候,的确少了很多功夫。
但是这儿也会引来了很多问题。
非常多的新手朋友忽略了数据类型这个概念,经常出错。
比如如下代码:1.Dim i,x(2)2.i = "a" //我们把 i = "a" 这类以“=” 号连接的语句叫做赋值语句。
通俗些就是在i代表的存储单元里面装”a”。
我们这儿先暂时这么理解,后文我会高手大家,什么叫存储单元。
3.TracePrint x(i)我们定义了两个变量,其中x是数组变量,数组最大下标为2。
然后我们给i赋值”a”,因为上面并没有定义i是什么类型的变量,所以这个赋值语句没毛病。
但是,如果我们让i作为数组x的下标之后,就出现问题了。
大家复制这段代码去运行,就能发现,提示脚本我的脚本1.Q ,第3行:类型不匹配: 'I',类型不匹配。
如果我们把i赋值“0”呢?1.<p style="line-height: 30px; text-indent: 2em;"></p><divstyle="text-align: left;"><span style="text-indent: 30pt;line-height: 1.5;">Dim i, x(2)</span></div>i = "a"2.x(0)=13.TracePrint x(i)4.i = "0"5.TracePrint x(i)调试信息如下:脚本我的脚本1.Q ,第4行:类型不匹配: 'I',脚本我的脚本1.Q ,第6行:1也就是说,我们的第二句调试语句TracePrint x(i) 没什么问题。
按键精灵字典写法 -回复
按键精灵字典写法-回复什么是按键精灵字典写法?按键精灵是一款自动化操作软件,它可以模拟人的按键和鼠标动作,实现自动化操作。
按键精灵字典写法则是按键精灵软件中的一种编程方式,通过建立字典,设定指令和参数,实现特定的操作。
如何进行按键精灵字典写法?步骤一:了解基本概念和语法规则1.1 按键精灵字典写法中,字典是存储指令和参数的数据结构,类似于键值对。
1.2 字典的格式为:字典名[键]=值,多个键值对之间用逗号隔开,最外层的大括号表示字典的开始和结束。
1.3 按键精灵字典写法中的指令是按键精灵软件支持的操作,可以是鼠标点击、按键输入、窗口操作等。
1.4 参数是指令的具体参数,如坐标、按键码等,用于指定执行指令的具体条件。
步骤二:创建字典2.1 在按键精灵软件中,点击“字典”菜单,选择“新建字典”,命名字典。
2.2 右键点击新建的字典,选择“插入键”,添加键名。
2.3 右键点击键名,选择“插入值”,添加键值。
可以根据需求添加多个键值对。
步骤三:编写指令和参数3.1 在字典中的键值对上右键点击,选择“插入指令”,选择需要执行的指令。
3.2 右键点击指令,选择“插入参数”,填写指令需要的参数。
步骤四:执行操作4.1 在按键精灵软件中,打开需要进行自动化操作的应用程序。
4.2 在字典中的键值对上右键点击,选择“开始执行”。
按键精灵将根据设定的指令和参数执行自动化操作。
通过按键精灵字典写法,可以实现一系列的自动化操作。
例如,我们可以创建一个字典,设定按键精灵在指定应用程序中自动点击某个按钮的操作。
总结:按键精灵字典写法是一种方便快捷的自动化操作编程方式。
通过创建字典、设定指令和参数,按键精灵软件可以按照设定的流程自动执行操作。
对于需要频繁重复进行的操作,按键精灵字典写法可以提高效率,节省时间,实现自动化操作。
按键精灵的原理和编写方法(1)
按键精灵的原理和编写方法(1)按键精灵的原理和编写方法(1)2009-08-14 16:27:40| 分类:默认分类 |字号订阅按键精灵是一类很普遍的游戏插件,wow raid过程中部分职业的某些操作就需要此类插件(文俊的牧师号在打某些BOSS时驱散用到过)。
类似的插件无非是用程序来模拟重复性的键盘动作。
游戏中进行键盘操作的程序可以理解为:按下某键——键盘驱动程序将此事件传递给操作系统——操作系统将此事件插入消息队列——此消息被发送到当前活动窗口。
按照这个过程来理解程序,剩下的只不过要将抽象化的语句翻译成代码。
当然很多过程编程工具(.NET)会自动处理,而不需你去理会。
(如如何插入消息队列,消息队列的管理,无用对象的释放)。
第一个问题,按下如何用程序来模拟在键盘上按下某键。
日常操作中,当用户在键盘上按下某个按键时,键盘内芯片会检测到这个动作,并将这个信号传递给计算机。
对于每个按键,键盘分配给它不同的编码,称做键盘扫描码。
当敲击键盘时,底层上实际传递给计算机消息队列的是该按键的键盘扫描码,所以知道了欲按键的扫描码,就可以将该信息传递给电脑,从而达到模拟按键的功能。
第二个问题,键盘驱动程序如何把此事件传递给操作系统。
解决第一个问题的关键是必须知道按键的键盘扫描码,但是仅仅知道键盘扫描码不够。
因为操作系统需要得到的信息的并不是键盘扫描码。
因为键盘扫描码是跟具体的硬件相关的,同一个键在不同键盘上的扫描码有可能不同。
键盘控制器将这个扫描码传给计算机,然后交给键盘驱动程序。
键盘驱动程序会完成相关的工作,并把这个扫描码转换为键盘虚拟码。
键盘虚拟码是针对键盘扫描码的非通用性所提出。
尽管出于硬件原因,同一个按键可能有不同的扫描码,但是无论什么键盘,同一个按键的虚拟码总是相同的,这样程序就可以识别了。
简单点说,虚拟码就是我们经常可以看到的像VK_A,VK_B这样的常数,比如键a的虚拟码(字母大小写虽然是同一个键,但是虚拟码不同)是&H61(即十进制的97,一般用16进制来表示虚拟码)。
按键精灵指导!
第一章变量的使用不论是在VBScript 的程序或任何其他的程序语言中,有一个最重要的也是最基本的概念叫做变量,因为写程序的目的在于,写出的程序在大部分的情况都可以执行出正确的结果。
就如同一个卖篮球鞋的厂商出了一双又好看又耐穿的球鞋,但是这款球鞋只有唯一的一个尺寸,如此一来,就算鞋子再好,消费群也只是那一小部分人。
程序也是一样的,好的程序就必须给程序使用者多一点弹性,程序才能发挥它最大的用处。
想做到这一点,就必须使用变量来编写程序了。
那变量到底是用来做什么的呢?简单说,变量就是用来存储某些信息,有可能是存储一些计算结果、人的姓名、字符串输入的正确性等等。
每当程序使用了一个变量,程序就会吧资料写到计算机的内存中,等程序需要它的时候就可以从内存中拿出来使用了,这就是变量最常被使用的方法。
本章重点介绍如何在VBScript 中声明及应用变量。
一变量的声明既然变量很重要,那就先来看看要如何产生一个变量。
变量的命名要遵守下列几个规则。
■ 开头必须是一个字母。
■ 要在255 个字符之内,这一点不需要太担心,如果一个变量名字长达255个字符的话,相信没几个人能自己记得住。
■ 可以使用任何字符、数字及下划线,但是不可以使用空格。
■ 不可以使用VBScript 会用到的运算符号,例如+ 、- 、* 、/ 等。
■ 不可以使用VBScript 中使用到的保留字,例如MID 、DIV 等。
由于VBScript 是由Microsoft 发展出来的语言,所以它的命名的规则还是遵照它一贯的设置,变量的名称是没有大小写之分的,例如:变量名MyClass 和变量名myclass 是一样的。
要在VBScript 中声明一个变量,方法是利用Dim 指令,在这个函数后面加上一个符合变量命名规则的名称,就等于建立了一个新的变量,例如:Dim customers在VBScript 中,变量的产生分为两种,一种就是用Dim 声明,另外一种就是直接给变量赋值,如此变量自然就存在了。
按键精灵9.5命令参数教程
按键精灵命令大全第1 页共11页按键精灵命令大全小技巧:按Ctrl+F,输入命令,即可进行查找定位键盘命令键盘模拟命令[KeyPress]"按下再弹起"键[KeyDown]"按下"键[KeyUp]"弹起"键键盘控制命令[WaitKey]等待按键[GetLastKey]获取上一次按键码鼠标命令鼠标模拟命令[LeftClick]模拟点击鼠标左键[RightClick]模拟点击鼠标右键[MiddleClick]模拟点击鼠标中键[LeftDoubleClick]模拟双击鼠标左键[LeftDown]模拟按下鼠标左键[LeftUp]模拟松开鼠标左键[RightDown]模拟按下鼠标右键[RightUp]模拟松开鼠标右键[MoveTo]移动鼠标[MoveR]鼠标相对移动[MouseWheel]滚动鼠标滚轮鼠标控制命令[WaitClick]等待按鼠标[GetLastClick]获取上一次按下的鼠标代码鼠标辅助命令[SaveMousePos]保存当前鼠标位置[RestoreMousePos]将鼠标移动到上一次保存的鼠标位置[LockMouse]锁定鼠标位置[UnlockMouse]解除鼠标锁定控制命令流程控制命令[If]判断语句[Goto]跳转语句[Rem]Goto命令的标记,也可以做注释[While] ...[EndWhile]循环[For] ...[EndFor]循环[EndScript]脚本结束颜色控制命令[IfColor]判断屏幕x,y坐标的某点的颜色,来执行后面的动作或控制过程[Sub] . [Return]定义过程[Gosub]调用过程其他命令[Delay]脚本暂停执行[MessageBox]弹出一个窗口[SayString]输入文字,支持变量[Import]导入VBS或插件命令[VBSBegin] ...[VBSEnd]VBS区块[VBS]单行VBS指令[VBSCall]执行外部VBScript函数[Plugin]调用一个外部插件提供的函数[UserVar]用户自定义设置[PutAttachment]展开附件[//]注释命令[TracePrint]调试窗口显示文字VBS命令[VBSCallDelay]脚本停止执行一段时间,支持变量[VBSCallFindCenterColor]从屏幕某个区域的中间开始找色[VBSCallFindColor]在屏幕指定区域从左到右找色[VBSCallFindColorEx]模糊找色功能[VBSCallFindPic]找图片,可设定相似度[VBSCallGetCursorPos]获得当前鼠标的坐标[VBSCallGetPixelColor]获得指定位置点的颜色[VBSCallGetScreenResolution]获得当前屏幕分辨率[VBSCallInputBox]"弹出"对话框允许用户输入文字[VBSCallMessageBox]弹出对话框,支持变量[VBSCallReadMemory]读取本机指定内存地址的数值[VBSCallRunApp]运行一个程序,或打开一个文件按键精灵命令大全第2 页共11页[VBSCallSayString]输入文本.[VBSCallSetCursorPos]设置鼠标位置[VBSCallGetCursorShape]获得鼠标形状键盘命令介绍键盘命令分为两大类:键盘模拟命令和键盘控制命令。
按键精灵二级认证选择题题库
按键精灵开发者二级认证参考答案1、Waitkey命令有几个参数?答案:02、颜色值为”FFFFFF”是什么颜色?答案:白色3、鼠标左键弹起的命令是?答案:LeftUp4、按键码53是下列哪一个按键?答案:55、Delay命令有几个参数?答案:16、延迟1天,以下哪一句代码是正确的?答案:Delay 1000*60*60*24*17、下列哪一个命令会暂停脚本?答案:WaitClick8、EndScript命令的意义是?答案:脚本停止运行9、判断条件应该使用下列哪个语句?答案:If语句10、按键精灵找图命令需要的图片格式是下列哪一个?答案:*.BMP11、以下哪一个不属于按键精灵的”全部命令”?答案:远程嗅探命令12、鼠标所在位置为(100,50),经过命令MoveToS 50+50,100 后鼠标所在位置为?答案:100,10013、不能正确调用KeyPress 命令的写法是?答案:K eyPress “FB”,114、鼠标右键单击命令是?答案:RightClick15、组合键”CTRL+C”的正确按键顺序是?答案:按下”CTRL”,点击”C”,弹起”CTRL”16、”F10”的按键码是?答案:12117、以下哪一个命令能够延时1个小时?答案:delay 1000*60*6018、下列RGB颜色值,书写正确的是?答案:”DD”19、区域找图的命令是?答案:FindPic20、循环可以使用下列哪个语句?答案:For语句21、附件中哪一种文件可以不经过释放直接使用?答案:BMP22、以下哪一个写法不能点击”shift”键?答案:KeyPress 60,123、去指定点颜色的命令是?答案:GetPixelColor24、锁定鼠标位置是下列哪一个命令?答案:LockMouse25、延迟3分钟,以下哪一句代码是正确的?答案:Delay 1000*60*326、鼠标右键弹起的命令是?答案:RightUp27、脚本停止运行命令是哪一个?答案:EndScript28、鼠标左键双击的命令是?答案:LeftDoubleClick29、解除鼠标锁定是下列那一条命令?答案:UnlockMouse30、键盘按下的命令是?答案:KeyDown31、以下哪一个不属于按键精灵基本命令?答案:压缩命令32、下列哪一个是鼠标命令?答案:LeftClick33、鼠标所在位置为(50,50),经过命令MoveTo 50,100 后鼠标所在位置为:答案:50,10034、以下哪一个是自动补血的思路?答案:检测血条上某一点,如果此点不是血条的颜色则执行加血操作35、下面哪一个是循环命令?答案:Do...Loop36、SetSimMode命令有几个参数?答案:137、哪一种写法不能循环5次?答案:For i=1 To 9 :Next38、下列哪一个不是键盘命令?答案:KeyClick39、按键码76是下列哪一个按键?答案:L40、空格键的按键码是?答案:3241、延时的命令是?答案:Delay42、下列哪一个不是鼠标命令?答案:LeftThreeClick43、下列属于键盘命令的是?答案:KeyUp44、如何退出Do循环的命令?答案:Exit Do45、得到一个按键的按键码,以下哪一个方法是完全正确的?答案:在按键精灵编辑界面的基本命令的键盘命令部分查询46、EndScript命令的意义是?答案:脚本停止运行47、延迟3秒,以下哪一句代码是正确的?答案:Delay 300048、下列哪一个命令会暂停脚本?答案:WaitClick49、按键精灵找图命令需要的图片格式是下列哪一个?答案:*.BMP50、以下哪一个不属于按键精灵基本命令?答案:压缩命令51、取指定点颜色的命令是?答案:GetPixelColor52、FindPic命令有几个参数?答案:853、区域找图的命令是?答案:FindPic54、区域找色的命令是?答案:FindColor55、下列哪一个不是循环命令?答案:Select Case56、鼠标相对移动的命令是?答案:MoveR57、下面哪一个是循环命令?答案:Do...Loop58、鼠标右键按下的命令?答案:RightDown59、鼠标所在位置为(0,50),经过命令MoveTo 50+50,100后鼠标所在位置为?答案:100,10060、下列哪一段代码不能输出”L”键?答案:Keyup “L”,161、下列RGB颜色值,书写错误的是?答案:”FFFFFFFF”62、FindColor命令有几个参数?答案:763、按键精灵语音大小写的描述哪一个是正确的?答案:按键精灵不区分大小写64、鼠标所在位置为(50,50),经过命令MoveR 50,100后鼠标所在位置为:答案:100,15065、延时命令Delay 1000,以下的解释哪一个是正确的?答案:延迟1秒66、不能实现键盘按下”A”键的命令是?答案:KeyPressW “A”,167、以下哪一个命令会暂停脚本?答案:WaitKey68、LeftDown命令有几个参数?答案:169、延迟2小时,以下哪一句代码是正确的?答案:Delay 1000*60*60*270、颜色值为”000000”是什么颜色?答案:黑色71、下列属于鼠标命令的是?答案:RightClick72、下列哪一种写法是错误的?答案:If Goto a Then :End If73、下列哪一个是选好命令?答案:While...Wend74、文本内容和数字连接在一起(连接符)应使用下列哪一个符号?答案:&75、以下哪一种方式不能无限循环?答案:在脚本开头加入”For 10000”,脚本尾部加入”Next”76、下列哪一个不是逻辑运算符?答案:Const77、以下哪一个不是按键精灵可以使用的界面?答案:检测血条上某一点,如果此点不是血条颜色则执行加血操作78、以下哪一个不是按键精灵可以使用的界面?答案:GUI界面79、KeyPress命令有几个参数?答案:280、键盘弹起的命令是?答案:KeyUp81、以下哪一段命令能正确执行”当a=1时点击A键,否则点击B键”?答案:If a=1 Then:KeyPress “A”, 1:Else:KeyPress “B”,1:End If82、如何退出For循环的命令?答案:Exit For83、代码KeyPress “A”,1调试后提示出差,错误原因是?答案:逗号使用了全角符号无法识别导致错误83、以下哪一个写法不能点击”shift”键?答案:KeyPress 60,184、默认情况下某些特定窗口模拟按键可能失效,以下哪种方法可能可以解决?答案:在脚本开头增加代码:SetSimMode 285、以下哪一段命令能正确执行”如果(70,416)的颜色等于”FFFFFF”则鼠标移动到点(100,200)”?答案:I fColor 70,416, “FFFFFF”, 0 Then:MoveTo 100,200:End If86、鼠标中键单击的命令是?答案:MiddleClick87、哪一种不能正确调用KeyPress命令?答案:KeyPress “FA”,188、不属于按键精灵基本命令是?答案:启动命令89、按键精灵语言大小写的描述哪一个是正确的?答案:按键精灵不区分大小写90、SetSimMode 1的实际意义是?答案:使用硬件模拟91、GetPixelColor命令有几个参数?答案:292、FindColorEx命令有几个参数?答案:993、下面哪一个命令会暂停脚本?答案:MsgBox94、MoveTo命令有几个参数?答案:295、以下哪一个命令不会暂停脚本?答案:for...next96、以下哪一个是自动打怪的思路?答案:检测怪物血条上某一点,如果此点是血条的颜色则执行打怪操作97、指定句柄进行截图,以下哪种情况不会导致截到的图是黑色?答案:窗口标题动态变化98、Do...Loop语句有几种使用写法?答案:5种99、使用哪个运算符(命令)可以实现将逻辑颠倒?答案:Not100、下列哪一个不是键盘相关命令?答案:KeyClick101、架构化语句可以多层使用,互不影响,这种写法被称作?答案:嵌套102、FindColorEx命令查找类型设置为1时,与下列哪条命令的功能是相同的?答案:FindCenterColor103、以下哪种结构不推荐在大型脚本工程中使用?答案:跳转结构104、哪个运算符可以实现多个逻辑全部为真时返回真?答案:And105、使用VarType命令判断一个数据,返回值为0说明这个数据?答案:不存在106、使用InputBox命令可以弹出要求用户输入内容的对话框,他的第三个参数表示?答案:默认数据107、在脚本中定义一个变量应该使用那条语句?答案:Dim108、使用按键抓抓工具不能正常获取到屏幕颜色时,可以尝试勾选哪个选项?答案:增强取色109、部分结构化语句支持在执行的过程中跳出,这一操作使用哪一个前缀的代码进行?答案:Break110、以下哪一种循环语句被称为“死循环”?答案:Do...Loop111、如何在按键抓抓工具中自动生成多点找色脚本?答案:在图像页面上方选中抓多点,按热键抓点后,点击生成代码112、下列哪一个自定义标识符是不合法的?答案:if113、按键码34是下列哪一个按键?答案:PageDown114、以下关于编辑器调试界面的单步和步过的功能描述错误的是?答案:单步和步过彼此独立,不能配合使用115、在编辑器中如何快速跳转到指定子程序代码处?答案:在编辑器上方的下拉框中选择116、按键码五十三是下列哪一个按键?答案:5117、使用Msgbox命令可以弹出对话框,并自定很多样式,他的第三个参数表示?答案:对话框标题118、下面哪一个命令会将脚本暂停?答案:MsgBox119、无法实现键盘按住“A”键的命令是?答案:Key PressW “A”,1120、下面选项中哪个是循环命令?答案:Do...Loop121、以下哪条命令可以得到表示变量数据类型的字符串?答案:TypeName122、以下哪一个命令能够暂停脚本?答案:WaitKey123、在按键精灵中可以精确表示最大范围证书的数字类型是?答案:Long124、键盘按键回车的按键码是?答案:13125、a=”2”+2语句执行后,变量a的值为?答案:4126、执行语句For i = 1 to 5 : Next 后,变量i的指值为?答案:6127、十六进制值“FFFFFF”是什么颜色?答案:白色128、不使用任何结构化语句实现的代码被称为什么结构?答案:顺序结构129、执行循环语句For i=4 to 13 step 2 : Next循环会被执行多少次?答案:5130、按键精灵中可用于表现任意文字的数据类型是?答案:String131、在脚本开头中加入代码Msgbox True弹出的值为?答案:-1132、阅读代码时可以使用下列哪一项功能将其他代码缩短,方便浏览?答案:折叠133、鼠标所在位置为(50,50),经过MoveTo 50,100命令后鼠标所在位置为:答案:50,100134、将数字转换为字符串使用那条命令?答案:Cstr135、下列哪一个按键的按键码是105答案:NUM 9136、下列中的RGB颜色值,书写无误的是?答案:”DD”137、Select语句在一条分支中判断多个条件值时,条件应使用那种分隔符?答案:,(逗号)138、2、2两个数字型的数据使用哪个运算符得到的结果为”22”答案:&139、Goto语句可以跳转到使用那条语句标记过的代码行?答案:Rem140、在编辑器中可以使用哪个功能设置自定义关键的提示和突出颜色显示?答案:批注141、选择按键精灵找图功能支持的图片文件格式。
按键精灵脚本编写命令全套汇编及其规范标准示范
按键精灵学习教程一、键盘命令(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脚本例子:(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次命令参数:无返回值:无脚本例子:(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命令功能:脚本执行到这一句暂停,按下任意鼠标键之后继续 命令参数:参数1 整数型,可选:变量名 返 回 值:无 脚本例子:(8.x 语法) 复制代码 1. last_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 语法)复制代码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.//条件放后面,前面的循环内容可以执行一次!脚本例子:复制代码命令名称: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次命令功能:函数命令参数:多类型,多参数返回值:多类型脚本例子:(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.//定义一个过程,可以在脚本中调用这个过程命令功能:跳转到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.Else17.//通过判断表达式的取值,来执行后面的动作或控制脚本例子:(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.Else7.//判断坐标点(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 "我是子程序,被你调用了"脚本例子:(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")的点,如果找到,则把鼠标移动到这个点脚本例子:(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坐标返回值:无脚本例子:(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表示查找方式。
按键精灵如何定义数组
按键精灵如何定义数组
按键精灵可以使用变量来定义数组,然后用数组索引来引用数组中的元素。
以下是按键精灵中定义数组的示例代码:
vbscript
Dim arr(4) '定义一个包含5个元素的数组
arr(0) = "元素1" '将第一个元素赋值为"元素1"
arr(1) = "元素2" '将第二个元素赋值为"元素2"
arr(2) = "元素3" '将第三个元素赋值为"元素3"
arr(3) = "元素4" '将第四个元素赋值为"元素4"
arr(4) = "元素5" '将第五个元素赋值为"元素5"
'输出数组中的元素
For i = 0 T o UBound(arr)
MsgBox arr(i)
Next
上述示例代码定义了一个包含5个元素的数组,并逐个给数组元素赋值。
然后通过使用数组索引,循环输出了数组中的元素。
按键精灵的数据类型转换
数据类型转换虽然在按键精灵中默认都没有定义类型,但是一些命令的参数还是对类型要求比较严格,在按键中也提供了类型转换的命令。
一、数值转布尔(CBool)CBool返回一个Boolean型的值。
如果表达式的值是零,则返回FALSE,否则返回True。
如果表达式不能解释为数值,则将发生运行时错误。
下面的示例利用CBool函数把表达的值转换成Boolean型的值。
如果表达不为零,CBool 返回True,否则返回False。
Dim ,B,CheckA=5:B=5 ‘初始化变量Check=CBool(A=B) '复选框设为TrueA=0 '定义变量Check=CBool(A) '复选框设为FALSE二、数值转字节(CByte)通常,可以使用子类型转换函数书写代码,以显示某些操作的结果应被表示为特定的数据类型,而不是默认类型。
例如,在出现货币、单精度、双精度或整数运算的情况下,使用CByte强制执行字节运算。
CByte函数用于进行从其他数据类型到Byte子类型的的国际公认的格式转换。
例如对十进制分隔符(如千分符)的识别,可能取决于系统的区域设置。
如果表达式在Byte子类型可接受的范围之外,则发生错误。
下面的示例利用CByte函数把表达式转换为 byte:Dim MyDouble, MyByteMyDouble = 125.5678 ' MyDouble 是一个双精度值MyByte = CByte(MyDouble) ' MyByte 包含 126三、数值转双精度(CDbl)通常,您可以使用子类型数据转换函数书写代码,以显示某些操作的结果应当被表达为特定的数据类型,而非默认的数据类型。
例如在出现货币或整数运算的情况下,使用CDbl或CSng函数强制进行双精度或单精度算术运算。
CDbl函数用于进行从其他数据类型到Double子类型的国际公认的格式转换。
例如,十进制分隔符和千位分隔符的识别取决于系统的区域设置。
按键精灵选择模板
按键精灵选择模板
一、什么是按键小精灵
按键小精灵是把按键精灵的脚本打包成一个可单独的exe程序,便于传播
以及提供给新手使用。
按键小精灵可以分为两种类型,分别是:
(1)免费小精灵:便于传播分享。
(2)商业小精灵:让用户可以把自己的脚本制成商业小精灵进行出售。
二、小精灵模板
在制作小精灵前必须有小精灵模板的支持,什么是小精灵模板,它在哪?
顾名思义小精灵模板就是用来生成种小精灵的一个依据。
或者可以通俗地说,按键小精灵模板是所有小精灵的“父亲”。
它存放在按键精灵目录下的mmt目录里面,后缀是mt*(*号代表按键精灵版本),这就是小精灵的模板。
三、制作小精灵
(1)在制作小精灵前我们必须先有一个脚本,我们用按键精灵自带的【未分类】下的【命令检查:全面测试升级版】这个脚本举例。
(2)有了脚本就可以开始制作了,首先选中该脚本。
然后在【工具栏】上点击【发布】,然后在下拉框里面选择【制作小精灵】,这时就会进入制作小精灵的界面。
(3)进入小精灵制作界面,写上小精灵的说明,点击【开始制作】。
(4)然后选择好生成的小精灵目录并且填写小精灵的文件名,确定后点保存即可生成了。
比如这里我们选择生成到桌面,名字为“我的第一个小精灵”。
(5)生成小精灵后,会有提示是否打开小精灵所在的文件夹?在这里选择
【是】,就可以在该目录中看到生成小精灵文件了。
按键精灵[命令函数]说明
按键精灵[命令函数]说明按键精灵[命令函数]说明 [KeyPress]格式: KeyPress {键盘虚拟码} {次数}解释:先“按下”再“弹起”键,模拟我们平时的“按键”操作. 我们在使用键盘的时候有两种操作,一种是”按下”键,一种是”弹起”键. 将这两个动作连续进行,就是一个完整的”按键”动作.按键精灵可以模拟所有的键盘动作.[KeyDown]格式: KeyDown {键盘虚拟码} {次数}解释: “按下”键,模拟我们平时的“按下”操作注意:有些键在按下之后,会和其他键产生组合效果,比如“Alt/Ctrl/Shift”, 如果使用“按下Alt”命令,那么之后的“按键”动作将变成“Alt+A”等组合动作, 因此记得在必要时使用“弹起”命令将组合键释放,避免影响键盘的正常使用.[KeyUp]格式: KeyUp {键盘虚拟码} {次数}解释:“弹起”键,模拟我们平时的“弹起”操作[KeyPressH]格式: KeyPressH {键盘虚拟码} {次数}解释: 硬件模拟按键,与KeyPress功能类似,先“按下”再“弹起”键,但采取了硬件模拟的方式在某些情况下普通模拟按键命令会失效,不妨试试硬件模拟命令[KeyDownH]格式: KeyDownH {键盘虚拟码} {次数}解释: 硬件模拟按下,与KeyDown功能类似,“按下”键,但采取了硬件模拟的方式在某些情况下普通模拟按键命令会失效,不妨试试硬件模拟命令[KeyUpH]格式: KeyUpH {键盘虚拟码} {次数}解释: 硬件模拟弹起,与KeyUp功能类似,“弹起”键,但采取了硬件模拟的方式在某些情况下普通模拟按键命令会失效,不妨试试硬件模拟命令[LeftClick]格式:LeftClick {次数}解释:在鼠标当前位置模拟点击鼠标左键.{次数}可以控制点击的次数[RightClick]格式:RightClick {次数}解释:在鼠标当前位置模拟点击鼠标右键.[MiddleClick]格式:MiddleClick {次数}解释:在鼠标当前位置模拟点击鼠标中键.[LeftDoubleClick]格式:LeftDoubleClick {次数}解释:在鼠标当前位置模拟双击鼠标左键.[LeftDown]格式:LeftDown {次数}解释:在鼠标当前位置模拟按下鼠标左键,{次数}在这个语句中虽然有效,但没有实际意义.[LeftUp]格式:LeftUp {次数}解释:在鼠标当前位置模拟松开鼠标左键,{次数}在这个语句中虽然有效,但没有实际意义.[RightDown]格式:RightDown {次数}解释:在鼠标当前位置模拟按下鼠标右键,{次数}在这个语句中虽然有效,但没有实际意义.[RightUp]格式:RightUp {次数}解释:在鼠标当前位置模拟松开鼠标右键,{次数}在这个语句中虽然有效,但没有实际意义[LeftClickH]格式:LeftClickH {次数}解释:使用硬件模拟方式,在鼠标当前位置模拟点击鼠标左键.{次数}可以控制点击的次数在某些情况下普通模拟鼠标命令会失效,不妨试试硬件模拟命令[RightClickH]格式:RightClickH {次数}解释:使用硬件模拟方式,在鼠标当前位置模拟点击鼠标右键. 在某些情况下普通模拟鼠标命令会失效,不妨试试硬件模拟命令[MiddleClickH]格式:MiddleClickH {次数}解释:使用硬件模拟方式,在鼠标当前位置模拟点击鼠标中键. 在某些情况下普通模拟鼠标命令会失效,不妨试试硬件模拟命令[LeftDoubleClickH]格式:LeftDoubleClickH {次数}解释:使用硬件模拟方式,在鼠标当前位置模拟双击鼠标左键. 在某些情况下普通模拟鼠标命令会失效,不妨试试硬件模拟命令[LeftDownH]格式:LeftDownH {次数}解释:使用硬件模拟方式,在鼠标当前位置模拟按下鼠标左键,{次数}在这个语句中虽然有效,但没有实际意义.在某些情况下普通模拟鼠标命令会失效,不妨试试硬件模拟命令[LeftUpH]格式:LeftUpH {次数}解释:使用硬件模拟方式,在鼠标当前位置模拟松开鼠标左键,{次数}在这个语句中虽然有效,但没有实际意义.在某些情况下普通模拟鼠标命令会失效,不妨试试硬件模拟命令[RightDownH]格式:RightDownH {次数}解释:使用硬件模拟方式,在鼠标当前位置模拟按下鼠标右键,{次数}在这个语句中虽然有效,但没有实际意义.在某些情况下普通模拟鼠标命令会失效,不妨试试硬件模拟命令[RightUpH]格式:RightUpH {次数}在这个语句中虽然有效,但没有实际意解释:使用硬件模拟方式,在鼠标当前位置模拟松开鼠标右键,{次数}义在某些情况下普通模拟鼠标命令会失效,不妨试试硬件模拟命令[MoveTo]格式:MoveTo {X坐标} {Y坐标}解释:移动鼠标到(X坐标,Y坐标)处举例:MoveTo 100 200把鼠标移动到(100,200)这个点上MoveTo intX intY把鼠标移动到(intX,intY)这个点上,需要5.50以上版本支持.[MoveR]格式:MoveR {X距离} {Y距离}解释:把鼠标相对移动(X距离,Y距离)举例:当前鼠标在(100,100)点,使用下面语句MoveR 200 300之后,鼠标就被移到了(100+200,100+300)处,也就是坐标(300,400)处[MoveRH]格式:MoveR {X距离} {Y距离}解释:相对移动鼠标的硬件模拟指令把鼠标相对移动,(X距离,Y距离)[SaveMousePos]格式:SaveMousePos解释:保存当前鼠标位置[RestoreMousePos]格式: RestoreMousePos解释: 将鼠标移动到上一次保存的鼠标位置举例:保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,这样脚本执行后鼠标的位置就不会变化[LockMouse]格式: LockMouse解释: 锁定鼠标位置,用户将不能通过移动鼠标而改变鼠标位置,而脚本仍可以改变鼠标位置举例: 在脚本开始的时候使用这个命令,可以有效防止用户误触鼠标引起脚本执行出错[UnlockMouse]格式: UnlockMouse解释: 解除LockMouse命令对鼠标位置的锁定。
按键精灵常量
按键精灵/按键精灵教程/论坛/常量一、什么是常量我想稍微有点基础的人都应该知道,所谓常量就是在程序运行期间,它的值从不发生改变的数据,而与之对应的,变量的值在程序运行期间是可以被改变的,如果我们在程序运行期间试图改变常量的值,那么程序将会出错。
我们使用const语句来声明常量,基本的格式为:Const 常量名=值比如:1、Const MyName="PiaoKe"2、Const Date=#2010/6/17#3、Const ShuZhi=1234564、Const P=trueconst后边跟的是我们自己起的常量的名字,常量名后边跟的有个等号,等号后边是我们为这个常量赋的值。
我来解释一下,第一个声明语句,声明了一个名为“myname”的常量,这个常量的值为一个字符串,我们需要注意的是,如果我们需要为常量或者变量赋的值是一个字符串的话,那么需要用双引号把这个字符串引起来,刚开始学习的新人会经常忘了这么一回事,这个是新人常犯的错误,务必注意。
Q语言中是不区分大小写的,所以常量MyName和常量myname指的是同一常量。
第二条声明语句,声明了一个日期型的常量,我需要说的是,在为一个常量或者变量赋一个日期型的值的时候,需要用两个“#”将这个日期括起来。
第三条声明语句,声明了一个数值型的常量,这个是直接赋值,什么都不用加。
第四条语句,声明了一个逻辑型的常量,也是直接赋值,但其值只能是true或者false。
关于常量,要介绍的还有最后一点,就是一种特殊的常量--符号常量。
什么是符号常量呢,就是用一个标识符表示的常量,这些常量是Q语言自己定义好的,我们只管在需要的时候拿来用就是了,比如,vbcrlf代表回车符和换行符的集合,vbgreen代表绿色,这种符号常量我们很有可能会在实际编写代码的过程中用到,用到的时候我再来详细解释一番吧,只说理论的话不太好理解。
那么,我尽量是一节课少讲一些东西,这样可以给那些学习的朋友足够的时间理解,那么,到此为止,常量是说完了,下节课会接着说变量。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
按键精灵/按键精灵教程/论坛/
数据类型
一、什么是数据
数据:在计算机系统中,各种字母、数字符号的组合、语音、图形、图像等统称为数据,是程序处理的最小对象。
二、数据类型
Q语言里的数据类型从数据结构来区分可分为:布尔(逻辑)型、数值型、字符型、字符串型、日期时间型、可变型。
(1)布尔(逻辑)型
布尔(boolean)数据类型 boolean变量存储为 16 位(2 个字节)的数值形式,但只能是True 或是 False。
布尔变量的值显示为 True 或 False。
使用关键字 True 与 False 可将布尔变量赋值为这两个状态中的一个。
此数据应用于
逻辑判断。
当其他类型数据转换为逻辑型数据时,0会转成False,而其他的值则变成 True。
当逻辑型数据转换为整型数据时,True转成“-1”,False转成“0”。
(2)数值型
数值型又包括:字节型、短整型、长整型、小数型、单精度型、双精度型。
数值类型顾名思义就是以0-9以及小数点组成的一串数字。
不同的类型有不同的取值范围。
(3)字符型、字符串型
字符是指计算机中使用的字母、数字、字和符号,包括:1、2、3、A、B、C、等等。
1个汉字字符存储需要2个字节,1个英文字符存储需要1个字节。
例如在VB中求字符串的长度时,len(str(1234))=4,len(1234)=2。
符串串是由零个或多个字符组成的有限序列。
一般记为 s='a1aan'(n>=0)。
它是编程语言中表示文本的数据类型。
(4)日期时间型
日期时间类型可以保存日期时间、只保存日期或只保存时间。
日期类型只保存日期,而时间类型只保存时间。
日期和时间类型比日期时间类型有效,因此在不需要日期时间类型所提供的附加功能性和灵活性的情况下,可以使用它们。
可以使用日期时间字面值结构直接创建日期时间型值,支持许多不同的格式。
CDate ("Aug 6, 1969")
CDate (1969, 8, 6)。