大家好,给大家分享一下按键精灵安装在电脑上怎样启动呢,很多人还不知道这一点。下面详细解释一下。现在让我们来看看!
按键精灵脚本制作教程
按键精灵脚本制作教程如下
1、打开手机上的按键精灵,和电脑版一样,有两种编写脚本的办法,一种是录制脚本,另一种是直接编写代码。
2、录制脚本属于按键精灵最歼培尘简单的编写办法,点击页面上的录制脚本,进入录中樱制脚本的界面,点击中间的马上录制。
3、然后退出按键精灵,转到你要录制脚本的界面,按下音量加键,接着开始操作,速度快一点,以后运行脚本也会快一些,录制完成后,点击音量氏禅减键。即可录制完成,完成后输入脚本名字,就可以在我的录制脚本下看到已经录制好的脚本了。
4、编写脚本点击第二个开发者脚本,里面自带了一些脚本,要新建脚本的话,点击左上角的新建。
5、就进入脚本的编写界面了,右侧有常用的命令,比如长按屏幕的某个位置,输入所需要按住某点的位置和按住的时间,然后确定,即可插入命令。
求按键精灵入门到精通视频教材,谢谢各位大婶!!!
手机上面下载一个百度传课,然后内面搜索按键精灵,可以找到对接视频课程,免费的。
按键精灵怎么用
使用步骤如下:
1. 制作脚本:按照个人需求从网上搜集脚本或者自己制作脚本。如果您的脚本是从别的地方收集的,请先把脚本文件拷贝到按键精灵文件夹下的script文件夹中,然后再运行按键精灵。
2.选择有效的窗口:建议您选择“对所有窗口有效”。如果您只需要脚本当某个窗口在前台时有效,请选择窗口名称,比如“龙族”
3.让需要执行的脚本“有效”,只有“有效”一栏中勾中的脚本才会执行。
4.进入游戏(或者其他需要使用按键精灵的软件) ,在需要使用脚本的时候按下脚本的“快捷键”,按键精灵就会忠实的为您工作了。
按键精灵主界面
图:主界面及功能按钮
主界面功能简介:
增加:增加一个新的脚本。
修改:修改当前选中的脚本。
删除:删除当前选中的脚本,可以同时选中多个脚本进行删除。
录制:录制新的脚本,新手制作脚本首选功能。
上传:将当前脚本上传至按键精灵网站,与他人进行交流。
全部有效/无效:让所有脚本有效或者无效。
注册:注册按键精灵,使用正版软件。
帮助:查看用户帮助手册。
图:录制功能
录制功能简介:
强烈推荐的功能!能够忠实记录您的动作,并在脚本执行时回放,新手也可随心所欲制作脚本。按下ScrollLock键就可以开始录制,再次按下就可停止录制,最后保存即可。如果您需要按键精灵忠实的记录鼠标移动轨迹,在后面的“记录鼠标移动轨迹”前面打个勾就可以了。录制过程中可以随便移动录制工具条,不会对您录制的动作产生任何影响。
图:上传脚本
上传脚本功能简介:
在主界运迅山面选择一个脚本,点击“上传”按钮就可以进入上传脚本界面。
您可以将自己比较得意的脚本上传到我们的服务器。在您的脚本上传成功之后,我们将会进行人工审核。不错的脚本都会被我们推荐给其他玩家共同学习。
上传时按键精灵会自动填写一些信息。请您在“脚本说明”里写上脚本的用途、制作思路等你认为对其他人有帮助的信息。没有说明或者说明不清楚的脚本将无法获得推荐。:-) 。
脚本编辑器
图:脚本编辑器界面
脚本编辑器使用说明:
在动作选择区选择动作,插入右边的脚本内容区即可。脚本支持粘贴、复制、移动、删除等操作。
脚本编写完毕之后,在脚本设置区进行一些必要的设置,点击“保存脚本” ,就可保存当前制作的脚本,点击右上角的X符号可以关闭编辑器返回主界面。
注意:我们默认的终止热键是“F12” ,目前所旁中有的脚本使用同一个终止热键,也就是按下一个终止热键之后,所有的脚本就会停止运行。
图:脚本调试功能
脚本调试功能简介:
脚本调试功能允许您随时观察脚本的执行顺序,也可以随意暂停/继续脚本的运行,方便查找脚本错误。当您点击“执行”后,脚本将会开始执行,同时记录下每一步执行了哪条动作(语句),您可以随时按“暂停”热键暂时中止脚本执行,然后点击“语句编号”立刻查看,看完以后可以随时让脚本从中断处恢复执行。
执行热键: ScrollLock 。
暂停热键:Pause
停止热键:ScrollLock 。
图: 抓点界面
抓点功能简介:
用户可以抓取20个坐标点以及相应坐标点的颜色。抓点热键包括数字键0到9,以及数字键下方的10个字母键Q到P。按下热键即可获得鼠标当前所在位置的坐标和颜色,以备制作脚本时使用。
偏移抓点:当使用偏移抓点时,实际抓到的是鼠标附近的一点的坐标和颜色(具体抓到的点用一个“瞄准镜昌兆”表示)。这样可以解决在某些情况下,鼠标图标颜色会挡住真实坐标颜色的问题。
按键精灵动作介绍
按键精灵的所有动作都需要在“动作选择区”中选定,然后插入“脚本内容区”。按键精灵的所有功能也都集中在动作选择区中。
按键精灵提供了丰富的动作供大家选择,这些动作分为四个大类。分别介绍如下 。
键盘动作:
按键动作:模拟键盘按下、弹起以及按键的动作。可以区分按下状态和弹起状态,也就是可以模拟按住一个键不放的动作 。
按键组合:模拟按下组合键的情况 。
鼠标动作:
鼠标点击动作:共有7种点击类型供你选择,单击或者双击,左键或者右键,等等。
抓点动作:点击“抓点”出现抓点界面,内置20个抓点热键可以抓取20个坐标点,足以满足大部分人的需要 。
鼠标移动动作:将鼠标移动到屏幕上某个预定的坐标点 。
鼠标相对移动:将鼠标相对当前位置进行移动 。
保存/恢复鼠标位置:保存当前鼠标位置、恢复鼠标位置到最后一次保存的位置 。
控制动作:
颜色控制动作:如果某一点的颜色符合条件,就执行后面的语句,颜色可以在“抓点”窗口中抓取 。
循环动作:将脚本反复执行
跳转动作: 在脚本的某个位置先设置一个“标记”,然后就可以在这里选择直接跳转到“标记”处 。
子程序调用:制作脚本子程序,可以随时调用 。
停止脚本运行:停止脚本运行功能 。
其它动作:
延时:可以让脚本停顿一段时间再继续执行 。
输入文本:输入一串文本,支持中文输入 。
注释/标记:你可以给自己的语句加以注释,同时这些注释也可以用来作为“跳转语句”中的“标记”
弹出窗口:弹出窗口显示窗口提示内容,可以暂停脚本的运行 。
按键精灵脚本编程语句
1.转移语句:Goto
格式:Goto [标记]
解释:跳转到标记的位置
2.注释或标记语句:Rem
格式:Rem [注释或标记] 。
解释:可以当作标记供跳转语句使用,也可以当作脚本的注释使用 。
3.条件语句:IfColor ... EndIf 。
条件正 格式:
IfColor x y color 0(x、y为桌面横坐标和纵坐标,color为颜色RGB码)
[语句块]
EndIf
解释:如果坐标点(x,y)的颜色等于color的数值,则执行语句块中的内容 。
条件反 格式:
IfColor x y color 1 。
[语句块]
EndIf
解释:如果坐标点(x,y)的颜色不等于color的数值,则执行语句块中的内容 。
4.循环语句:For ... EndFor 。
格式:
For [循环次数]
[语句块]
EndFor
解释:将语句块反复执行数次,执行次数由“循环次数”控制 。
5.延时语句:Delay
格式:Delay [毫秒]
解释:等待一些时间再执行下一句脚本。
6.光标移动语句:MoveTo、MoveR 。
格式:
绝对移动:MoveTo x y 。
解释:移动鼠标到(x,y)点 。
相对移动:MoveR dx dy(dx、dy为正时表示正方向移动,为负即为负方向移动)
解释:相对当前坐标横向移动鼠标x,纵向移动鼠标y 。
7.鼠标控制语句:LeftClick、RightClick、LeftDoubleClick、LeftDown、LeftUp、RightDown、RightUp 。
格式:
左键单击:LeftClick 1 。
右键单击:RightClick 1 。
左键双击:LeftDoubleClick 1 。
左键按下:LeftDown 1 。
左键弹起:LeftUp 1
右键按下:RightDown 1 。
右键弹起:RightUp 1 。
8.键盘按键语句:KeyPress、KeyDown、KeyUp 。
格式:
按键:KeyPress code 1(code为键盘 ASCII码)
按住:KeyDown code 1 。
弹起:KeyUp code 1 。
9.输入字符串语句:SayString 。
格式:SayString [要输入的字符串] 。
10.保存/恢复鼠标位置
格式:
保存鼠标位置:SaveMousePos 。
解释:保存当前鼠标位置
恢复鼠标位置:RestoreMousePos 。
解释:将鼠标移动到上一次保存的鼠标位置 。
这两个语句常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置。
11.子程序、子程序调用
格式:
Sub [子程序名]
[语句块]
Retrun
解释:将一些语句放在子程序中,可以被反复调用 。
Gosub [子程序名]
解释:调用子程序中的语句块
11.脚本停止运行
格式:EndScript
解释:完全停止当前脚本的运行。可以用于调试脚本。
12.弹出窗口
格式:MessageBox [窗口显示内容] 。
解释:弹出一个窗口,显示设置的内容,用户点击“确定” 方可继续运行脚本,可以用于暂停脚本的运行。
按键精灵怎么使用?
转 舞月茗香——按键精灵脚本教程。
本教程欢迎转载,但请注明:转载自简单游官方论坛,作者:舞月茗香。
在第一版教程的基础部分发布之后,受到了热烈的欢迎,也深感责任重大。同时,对第一版内容编排,自我感觉并不良好,文容急赶所致,很多重要的内容都一带而过,并没把它放到作为一种入门教程的基础上。思过更新,才有此重新修改版。以不求速度,只要质量为前提,带更多的朋友,跨越按键精灵编程的门槛,达到传说中高手的境界。
作为简单游最早的一批员工,整整一年的时间都在和按键精灵打交道,从简单游起步时,只有少部分人知道这个名字,到现在拥有几十万的固定用户群,我深感欣慰。记得在年初的时候,第一次把脚本公布在简单游,第一次感受玩家们的热情,第一次有玩家朋友每天帮我测试脚本、提出意见、每天守侯的电脑前等待我更新的情景。每次忆起,都会有莫名的感动。同时按键精灵作为老牌的脚本工具,时至今日,都没有一份良好的起步教程,也颇为惋惜。以某不才之力,侵浸绵薄之功,发布此按键精灵核心教程,以尽心意。
我会尽量的在教程中描绘更多的内容,不单单是按键精灵入门教程和脚本编写技巧提高,同时也会讲述按键精灵底层的一些技术细节与实现方法。以初学者为导读对象,从浅入深,从简入繁,一步步的走入精彩的按键精灵世界。
第一部分会以补红脚本入手,穿带几乎所有基础知识,为后续的章节打下坚实的基础。
第二部分则是2D和3D游戏的自动打怪脚本的分析与制作,从思路到代码编写,再到问题的解决思路,给出详尽的描述。
第三部分转换思路,讲述其他非游戏的脚本如何制作,进而把按键精灵扩展到更多的领域。方便日常生活所需。
第四部分超越按键,也是最后一部分,描述按键精灵结合独有的插件系统,编写出更加强大的软件功能。
在本教程起草之日起,请朋友们耐心等待,因第一次写此类教程,本着对大家负责的态度,教程写好要反复修改,衡量各知识点的编排的章节与要点。进度会稍慢,以此保证,每周至少会更新一节。历时半年之久,只求精品现世,望朋友们海拿虚敏涵。
初窥补红蓝脚本
---------------------------------------------------------------------------------------------------------------------------------------------------------------。
本教程欢迎转载,但请注明:转载自简单游官方论坛:bbs.jdyou.com。
作者:舞月
第一章概述
第一章以补红脚本为基础,从简入繁,从易到杂,详细讲述补红脚本的制作方法与按键精灵基础知识。在描绘整个补红脚本的基础上,为第二章自动打怪脚本的制作方式铺垫基础。如果你能从坚持看完第一章,可以肯定的是,你会达到简单游已有的各专区补红蓝脚本的设计水平。
正文开始:
很多朋友都留言来信询问,如何制作自己的补红补蓝脚本。其实编写方法多种多样,不一而足。在本章里,会以补红蓝脚本做为切入点,实际讲述各种脚本的编写方法。并避开枯燥的编程概念讲解,以实为主,通过大量的应用例子掌握按键精灵。
首先出现在本节中的一些术语做一个简短的说明:
坐标—消枝—屏幕象素的坐标值,如当前分辨率为1024×768,则屏幕左上角的坐标是:0,0。右下角则是:1024,768。
抓色/抓点——抓取屏幕内某一象素点的坐标极颜色。使用方法:控制命令->抓点坐标/颜色->在面图上点左键,加入到坐标点->退出抓点->选好坐标颜色后->插入。
关键字——按键精灵的保留字,不可以做变量使用。
了解以上内容后,就可以开始我们的脚本之旅了。
先考虑手动玩的情况,当自己的血或者魔法值低于某一临界值时,我们就要使用各种补血补魔的药品了。同样,按键精灵也通过这点判断,如果屏幕坐标的某一点颜色,不等于血或魔的颜色,就该吃药了。我们来看在按键精灵里的写法:
IfColor 138 109 ef844b 1。
KeyPress 49 1。
EndIf
对以上代码解释如下:
如果(138,109)的颜色不等于#ef844b颜色,则。
按键<1>。
条件结束
其中138,109是血条上任意问题,ef844b是血的颜色。
ifcolor——是按键精灵的关键字,表示这句是判断颜色。
138 109——分别是屏幕上X,Y的坐标值。
ef844b——是屏幕上的颜色16进制的BGR值誉汪。
1——代表条件,该位置可以设置0,1,2三个值,0是相等,1是不等,2是模糊相等。
只有以上的代码是不足够的,原因在于以上代码只运行一次。我们要让他不断的检测颜色,这样就达到自动补红补蓝的目的了。
看两句代码:
Rem s
Goto s
解释:“Rem s”可以理解为在该位置做一个标记s。而“Goto s”则是无条件跳到此标记执行,其中s可以自定义,跳到Rem [标识符]处。rem和goto都是按键精灵的关键字。
这里说一下程序运行机制,每行代码都有行号,脚本解释器要一行一行代码的执行下去,直到执行最后一行代码或碰到EndScript语句(该语句在后面会有讲解),没有任何代码可执行了,程序就退出。我们的目的是让程序持续不断的进行检测,有了rem .. goto就完美解决了。来看最后的实例:
Rem s
IfColor 138 109 ef844b 1。
KeyPress 49 1。
EndIf
Delay 100
Goto s
解释:Delay 是暂停运行的关键字,后面跟随的100,表示暂停0.1秒。
整个程序结构清晰,一目了然,不再做过多的解释。补蓝脚本留做作业。
回顾本节所讲解的关键内容:
ifcolor .. endif 关键字的使用方法。
IfColor [X坐标] [Y坐标] [GBR颜色] [对比条件]。
rem .. goto 关键字的使用方法。
Rem [标记名]
Goto [标记名]
delay 关键字的使用方法
Delay [暂停时间,单位毫秒]。
---------------------------------------------------------------------------------------------------------------------------------------------------------------。
再接再力渗透补红脚本
本教程欢迎转载,但请注明:转载自简单游官方论坛:bbs.jdyou.com。
作者:舞月
回顾上节所说的内容:
1、ifcolor [x] [y] [颜色] [对比]。
ifcolor - 关键字,用于颜色对比。
x - 屏幕上横坐标
y - 屏幕上枞坐标
颜色 - BGR三元色
对比 - 0:相等 1:不等 2:约等。
2、Rem [标记]
rem - 关键字,在该行号做个标记,为goto做标记。
3、Goto [标记]
goto - 关键字,跳转到相关标记。标记可以是任何字母、数字、汉字、特殊符号,但该标记必须唯一。否则会错误跳转。
4、Delay [毫秒]
delay - 关键字,暂停XX毫秒继续运行。
我碰到过不止一款游戏,用上一节所讲述的脚本,使用并不正常。通过测试分析,了解到游戏画面与血条画面刷新并不同步。这会导致判断错误,解决办法是通过取游戏血条的底色来判断。这个方法只适合底色不变,或变化不大的游戏。对比值给0或2。
IfColor 138 109 1b7c5d 0。
KeyPress 49 1。
EndIf
但如果底色是透明的(随环境变化而变化,没有固定的颜色),就比较不好做了,比如韩国的Archlord这款游戏。先给出一篇代码,然后实例讲解。
i = 0
For 5
IfColor 138 109 2312ff 0。
i = i + 1。
EndIf
EndFor
If i = 0
//加血
EndIf
本段代码引出了两个概念:
1、变量:如第一行的i = 0和ifcolor体中的i = i + 1。
2、循环语句:for 5
3、条件语句:if i = 0。
下面分别对这两点进行讲解。
1、变量:
变量的概念,对于初学者来说,确实不容易理解。为了加深理解,这里放弃书面语描述,先讲变量如何使用。
我们来描绘这样一段生活中的场景:手里拎了很多东西,并想进超市,那么必然要存包,在从超市出来后,再把存起来的东西取出来。再描绘另外一段生活中的场景:我们取银行存钱,拿着银行卡,可以在很多地方取钱消费。
就这样一个存和取的动作,已经代表了变量的应用,变量就是以上描述中的柜子和银行卡,我们把数据存到变量中,然后在需要该数据的时候再从变量拿出来用。但实质上,变量并不是柜子,他是一个代替品,或者说是代名词,假设我们把数字22存到变量a中,那么a就代表了22,当我们需要使用这个22的时,直接用a来代替他就可以,22并不会从a中消失。而他的特性就像柜子一样,可以储存我们需要他储存的各种数据。
看具体实例:
a = 22 //在这里我们给一个变量名叫a的变量,赋值22。
b = a //这里则是把a变量的值22取出,赋值给b变量,而a变量的值不会消失,此时a和b的值都是22。
c = a + b //把a和b的值取出来做加法操作,赋值给c变量,此时a和b的值都是22,c的值是44。
a = a - 1 //这句和数学上的理解就不一样了,首先从a中取出值22,然后减1,最后的结果再送回给a,此时a的值是21。
把以下代码复制到按键精灵中,运行一次,看看效果,会加深理解。
a = 22
VBSCall Call MessageBox(a)。
b = a
VBSCall Call MessageBox(b)。
VBSCall Call MessageBox(a)。
c = a + b
VBSCall Call MessageBox(a)。
VBSCall Call MessageBox(b)。
VBSCall Call MessageBox(c)。
a = a - 1
VBSCall Call MessageBox(a)。
对于变量的描述,到此还远远不够,在此,仅解释了变量做加减法的操作,不过对于解释本节开始的代码已经足够。更加复杂的内容,会在以后陆续讲到。
2、循环语句:for 5
循环语句比较容易理解,for 5的作用就是循环for到endfor中的数据5次。实际看一次效果会彻底理解,不再做过多解释:
for 3
VBSCall Call MessageBox(3)。
endfor
这段代码会弹出三次3。
3、条件语句:if i = 0。
从语意上,我们看的出,如果i等于0,则做某些操作。首先要说的,if作为按键精灵关键字,承担的作用就是分支语句块,关于这点会在下节做详细的描述。if和ifcolor两个关键字是按键精灵唯一的条件语句。条件语句,既满足条件,则执行某些操作,否则执行另外一些操作。在if后面会跟随一个条件判断句,在这里就是i=0。条件判断句的结果只有两种:“真”或“假”,“是”或“非”。要么正确,否则就不正确,没有中立的存在。从变量的解释中,我们看到i的值可能是0,也可能是1到4中任何一个数。如果i是0的话,那么i=0的结果就是“真”,否则他就是“假”。
看具体实例:
if 1=2 //假
if 3=3 //真
把下面代码复制到按键精灵中,运行一次,会对if语句有更深的理解。
a=1
if a=1
VBSCall Call MessageBox(1)。
endif
if a=0
VBSCall Call MessageBox(0)。
endif
这里有一个可能引起歧义的地方,我在这里做一个解释。
我们发现在变量赋值的时候,我们使用“=”。而两个值对比的时候,我们还是使用“=”。到底这个=号有几种作用,什么时间发生什么作用呢?这里我说明一下:在=号不需要任何返回值的情况下,则是“赋值运算符”,需要返回值的情况,则是“比较运算符”。在if当中,if语句后面,需要有一个真假值的存在,以判断if下面的语句是否执行。
通过以上两个概念的简单理解,我们来分析一下本节开始部分代码的流程:
i = 0 //首先给变量i赋值0。
For 5 //循环执行5次ifcolor语句。
IfColor 138 109 2312ff 0 //如果左边(138,109)的颜色等于2312ff。
i = i + 1 //把i变量的值加1。
EndIf //结束ifcolor语句块。
EndFor //结束循环体
If i = 0 //如果循环5次的颜色都不相等,则。
//加血
EndIf //结束if语句块。
相信以上的解释,已经完整描述了该代码的作用。并且我们发现if和ifcolor的结束关键字都是endif。我实际编写代码中,我发现很多朋友都有忘记写endif的时候。此点千万切记,不要忘记写哦。
回顾本节所讲解的关键内容:
1、变量的简单使用与赋值方法
2、if .. endif语句的使用方式。
3、for .. endfor语句的使用方式。
---------------------------------------------------------------------------------------------------------------------------------------------------------------。
高级补红蓝脚本写做的基础知识
本教程欢迎转载,但请注明:转载自简单游官方论坛:bbs.jdyou.com。
作者:舞月
本节比较特殊,并不会讲述实际的脚本编写技巧,而是对前两节内容并没表述清晰,或还存在疑问的地方,进行深入剖析。以求把握设计的精髓。
回顾上一节内容:
1、变量的简单使用与赋值方法
2、if .. endif语句的使用方式。
3、for .. endfor语句的使用方式。
变量的详细讲述:
在上节中,我们知道了变量的简单应用,这里会对变量有一个详细清晰的描述,并提出一些错误的方法,以求避免。在之前的教程发出去之后,看客们的热情异常高涨,根据之前所讲内容,纷纷编写出自己的脚本,但在其中发现了某些影响全局的错误。其中就包含变量的错误使用。好,我们开始。
VBS中,变量只有一类型,既变体型。何为变体型,这要从VB中讲起。VB中变量分为很多在种类型,包括整型、浮点型、字符串类型等等。对于我们学习按键精灵的编写,深揪VB中的变量类型是毫无用处的,这里表过不谈。
在VBS变量只有一种类型,什么是数据类型呢?我们知道变量是一个存储空间,在VB中每一种变量所能存储的数据是不同的。比如:a=1那么a变量存储的是整数类型,而b=1.1。那么b变量存储的是小数类型。如果这时把a=b,则出现错误。因为整数类型并没有存储小数类型的能力,VB解释器会出现一个执行期错误。关于数据类型,如果想知道更多,在搜索引擎里可以找到非常多的内容。当然,如果不知道,对我们的课程也不会有丝毫影响。
回过之前的话题,VBS变量只有一种数据类型,这种数据类型叫做变体型,既是说,无论你向变量里储存任何数据,那么该变量都可以自动变为相应的数据类型。明确了这点,我们就可以在按键精灵里随意赋值了。这里要提一下字符串类型。因为字符串与其他数据类型的不同性,所以使用方法会略有不同。也是初学者经常出现的问题。
我们暂且可以把数据类型理解为两种:数字类型和字符类型。数字类型包含我们日常所能碰到的所有类型,包括整数,小数,负数。而字符类型则是英文的26个字母及中国汉字和其他国家的文字。
数字类型的赋值方法:
a = 32
b = 2.2
c = -25
d = -4.4
其中a, b, c, d分别是整数,小数,负数。
字符串的赋值方法:
x = "abcdefg"
y = "1234567890"。
z = "你好"
我们发现字符串类型和他的名字一样,是一个一个的字符串接起来的。并且在其左右分别有一个双引号。
通过以上的例子,我们看到,数字类型与字符串类型的唯一区别就在于是否有这个双引号。那么我们可以这样说,只要有双引号的,就是字符串类型,其他都是数字。我们看一个错误的例子,加深理解:
a = 32 //这句是对滴
a = "bb" //这句也是对滴。
a = "cc"dd" //这句出现错误,程序会以为是字符串cc,而后面dd"无法解析,所以整句话出现错误。
vbscall call messagebox(a) //这里的结果是bb,按键精灵忽略所有发生的错误,继续一条运行。
有朋友会问,那如果我要在整个字符串中加一个"号该如何解决呢,这里我告诉大家:在"号内把两个""连起来就可以了,在这里第一个"是转义字符,这里不比深揪,会用就好了。看例子:
a = "a""b""c" //a的值是:a"b"c。
a = "a""b""c""" //a的值是:a"b"c"。
a = """a""b""c" //a的值是:"a"b"c。
最后一个变量要说的地方,字符串相加。
我们都知道数字可以相加,那么字符串如何相加呢,这里我透彻的告诉大家。按键精灵中的字符串相加有两种运算符,分别是“+”和“&”。“+”只有在两边都是字符串的情况下才可使用。如果两边都是数字,或者只有一方是数字的情况下,使用“&”就可以达到字符串连接的目的。当然,两边都是字符串也可使用“&”号。这里我推荐大家在做字符串连接的时候,不要使用“+”,统一使用“&”操作。这样,看见“+”号就是数字相加;看见“&”就是字符串相加了。这样写也是良好的编程习惯。
一、if语句详解:
在按键精灵中,只有两个if语句,分别是:ifcolor和if。在前面两节对if和ifcolor都有明确的介绍。这里补充之前没有提到的地方。
先看if语句
原形:if [条件判断式] .. else .. endif。
其中条件判断式比较容易理解,在前一节已经略微的讲过了。这里结合各种数据类型,详细的讲解出来。
if [条件] .. else .. endif。
其中条件是表达式,需要返回真假值,根据返回值执行其余代码。if .. else .. endif组成了一个条件分支。要么执行if到else中的语句,要么执行else到endif中的语句。而选择分支的条件就根据条件返回的真假值了,返回真,就执行if到else中的代码,返回假就从else开始执行。在没有else的情况下,则条件返回真就执行if到endif中的语句,否则就跳过整个if块,从endif后面开始执行。
这里强调一下条件部分该注意哪些问题:
1、if a=b这样的语句中,a和b必须是同一种类型。也就是说a和b都要是数字,或者a和b都是字符串。
2、if a>b这样的语句中,a和b必须是数字类型,如果拿字符串对比,可能出现结果和你的预期并不相同。
3、if a=b这样的语句中,=号两边分别是数字和字符串,应该避免出现这种情况。假设出现了这种情况,我说一下解释的过程,首先把字符串转换成数字,然后再进行比较。if 1="1"这样的语句是没有问题的,因为"1"可以自动转成数字1。而if 1="a"那么整句就是出现错误,在按键精灵中忽略这种错误,结果就是if语句后面的语句会强制执行,并导致以后的代码部分失效(堆栈不匹配)。所以使用if语句的时候,应该尽量避免数字和字符串比较,如果真要这样的话,最好执行一个强转函数,看例子:
a="123456"
b=123456
if int(a) = b
endif
这里我们使用了一个int(a)把a转换成数字类型。函数查找请使用按键精灵中的“vbscript生成器”
二、再来看ifcolor
原形:ifcolor [x] [y] [颜色] [条件] .. else .. endif。
其中x, y是屏幕坐标位置;
颜色是你要对比的颜色;
条件非常的重要,它只能给三个值0,1,2中的任意一位。下面接三个值分别予解释。
0是x,y点的真实颜色与我们给的颜色想对应,则是真,否则是假。
1恰好与0相反,x,y点的真实颜色与我们给的颜色一样的话,则是假,否则是真。
而2是模糊比对,这里详细解释一下。我们知道屏幕上的颜色由RGB三元色组成,每种色的染料比例不同,屏幕上的色就不相同。而在windows中,每种色的可变化的值是从0-255。纯白色点的三元色值都是255,而纯黑色则都是0。用16进制表示就是从00到FF.不知道16进制和10进制是怎么转换成的,可以用附件中的计算器选科学型转换。所以我们看到按键精灵取到的颜色是类似于0A1B2C这样16进制表示的代码,分别是由GBR三种颜色组成。知道了这点,就可以正确的理解模糊值了。(这里透露一个小秘密,按键精灵的模糊值范围是50。如果你看不懂,就略过这里,只要知道模糊判断不会把绿色判断成红色就可以了)
else同if语句,如果找到颜色则不执行else。找不到则执行。
总结今天说讲内容:
1、按键精灵中变量只有一种数据类型。
2、字符串类型要用双引号括起来,及在字符串中增加"字符。
3、“&”号作为字符串相连符。
4、按键精灵会忽略所有的错误,而执行下一条。
5、if .. else .. endif的执行顺序。以及数字、字符串的比较方法。
6、ifcolor .. else .. endif的执行顺序。
本想在这节把循环也讲了,但所涉及的内容实在太多,留在下节里说吧。循环说完了,就步入到应用代码编写阶段了。