按键精灵介绍1
Q语言是在VBScript的基础上发展起来。
脚本是按键精灵一系列可以反复执行的命令。通过一些判断条件,可以让命令具有一定的智能效果的集合。
脚本文件的结构
第一:完整脚本格式说明 脚本分为几个部分,分别是
[General] — 通用的设置部分
[Repeat] — 设置脚本循环的部分
[Attachment] — 脚本附件,大家看到的是乱码
[Script] — 脚本命令
按键小精灵是把按键精灵的脚本打包成一个可单独的exe程序,便于传播以及提供给新手使用。
按键小精灵模板是所有小精灵的“父亲”。它存放在按键精灵目录下的mmt目录里面,后缀是mt*(*号代表按键精灵版本),这就是小精灵的模板。
进入制作小精灵的界面:选中脚本->【工具栏】--【发布】->【制作小精灵】
按键精灵中起名字,不能以数字开头,也不能用除下划线“_”之外的其它符号。除此之外,还有一些名字是不能用的,这些就是系统所保留的关键字和内置函数名。
关键字是电脑语言里事先定义的,有特别意义的标识符。关键字取名尽量不要与内置函数名相同。
内置函数名包括按键精灵基本命令中的所有命令名和标准VBS命令中的所有常数、函数、方法、对象、属性、语句的名称。
几种比较常用的命名方法:
1、单词加下划线组合
2、每个单词的第一个字母大写
3、用汉字组成的准确意义表示
4、汉语拼音组合
常量就是在程序运行期间,它的值从不发生改变的数据。
使用const语句来声明常量,基本的格式为: Const 常量名=值
如果我们需要为常量或者变量赋的值是一个字符串的话,那么需要用双引号把这个字符串引起来。
Q语言中是不区分大小写的。
在为一个常量或者变量赋一个日期型的值的时候,需要用两个“#”将这个日期括起来
符号常量:就是用一个标识符表示的常量。
vbcrlf代表回车符和换行符的集合,vbgreen代表绿色
标准自定义变量格式:UserVar {变量}={默认值} {注释}。
下拉型自定义变量格式:UserVar 变量=DropList{选项0:值0|选项1:值1|选项2:值2}=默认显示的选项编号 {注释}
数据:在计算机系统中,各种字母、数字符号的组合、语音、图形、图像等统称为数据,是程序处理的最小对象。
从数据结构来区分可分为:布尔(逻辑)型、数值型、字符型、字符串型、日期时间型、可变型。
数值型又包括:字节型、短整型、长整型、小数型、单精度型、双精度型。
类型转换的命令:
一、数值转布尔(CBool):如果表达式的值是零,则返回FALSE,否则返回True
二、数值转字节(CByte)
三、数值转双精度(CDbl)
四、小数型转整数型(CInt):CInt 与 Fix 和 Int 函数不同,后两者将数字的分数部分截尾取整,而不是四舍五入。当分数部分恰好为 0.5 时,CInt 函数通常将其四舍五入为最接近的偶数。例如,0.5 被四舍五入为 0,而 1.5 被四舍五入为 2。
五、数值型转长整型(Clng)
六、数值型转单精度型(CSng)
七、数值型转字符串型
算术运算 (arithmetic operators) 符,就是用来处理四则运算的符号
乘法 3*3
/ 除法
^ 乘方
\ 整除
Mod 取余
按键中的逻辑运算符有四个:And(逻辑与)、Or(逻辑或)、Not(逻辑非)、Xor(异或)
And逻辑与:逻辑与运算在生活中说的“并且”,就是两个条件同都同立的情况下“逻辑与”的运算结果才为“真”
Or逻辑或:“逻辑或”相当于生活中的“或者”,当两个条件中有任一条件满足,“逻辑或”的运算结果就为“真”,“有真则真”。
Not逻辑非 逻辑非是指本来值的反值。
Xor异或:也叫半加运算,其运算法则相当于不带进位的二进制加法:二进制下用1表示真,0表示假,则异或的运算法则为:异或0=0,1异或0=1,0异或1=1,1异或1=0,这些法则与加法是相同的,只是不带进位。 0 Xor 0 = 0 0 Xor 1=1 1 Xor 1=0
结构是一样的。唯一不同的是IfColor的判断条件是以四个参数一起决定。
分别是前两位的坐标参数,第三个参数是颜色值,第四个参数是判断条件。值为0时就代表等于,为1时代表不等于,为2时代表约等于。
Select是根据表达式的值执行几组语句之一
语法: Select Case {变量} Case {值} {脚本内容} Case Else {脚本内容} End Select
主要的循环语句有For …Next/Do …Loop/While…Wend
For…Next是按指定的次数执行循环体。
For 3 TracePrint 1 Next 这样子的语句在实际执行过程当中循环体里面的TracePrint会被执行3遍,这在调试状态下可以很明显地看到输出3个1。
另外一种写法则是要设置循环的开始、结尾还有步长。如上面的例子可以改写成: For i=1 To 3 Step 1 TracePrint 1 Next。这一句可以简单地理解成 设置i=1 到 3 步长为1。这样子理解的话,我们就会发现,从1到3每次加1。那么加3次刚好到3,于是结束循环。此外若步长值为1,则Step 1可以省略。
Do…Loop有两种格式:前测型循环结构和后测型循环结构。
格式: Do {While|Until} 循环体 Loop Do While…Loop。当条件成立时,执行循环体。当条件不成立时,终止循环。
While…Wend循环结构
子程序,我们可以把它理解为在一个脚本中,如果其中有些脚本内容优化完全相同或是相似,为了简化脚本,可以把这些重复的程序段单独列出,并按一定的格式编写成子程序。
格式: Sub 子程序名(形参1…) End Sub
函数:格式: Function 函数名(形参1…) //脚本代码 End Function
数组是在脚本编辑中,为了处理方便把具有相同类型的若干变量按有序的形式组织起来的一种形式。
Dim a(n) a是这个数组的名称,这个数组共有n+1个数组元素,最小下标为0,最大下标为n
for 循环进行数组的遍历操作。脚本如下: Dim a(5) i=0 For UBound(a)+1 a(i)=i TracePrint “a(” & i & “)=” & a(i) i=i+1 Next 上
UBound函数可以获取到数组的最大下标,然后再+1就是实际数组的大小了
模拟鼠标滚轮的滚动动作,可设定滚动的齿格数。滚动1齿格对应的行数可在系统里设置,具体方法是在“控制面板->硬件->鼠标->轮”里设定,默认1齿格对应3行
跳转语句 这里的跳转分两部分,分别是下半部分的定义标记和子程序。以及上半部分的调用
调用子程序:子程序是一些相对独立的语句,它可以被取上一个名字从而让人调用它。
插入标记:标记是不被执行的,但它像一个灯塔一样可以指引按键精灵找到他,并且接着执行它下面语句。
获取指定点的颜色:颜色值传递给了变量“GetColor”,我们就可以利用这个颜色值来判断下一步要做哪些操作了。
区域找色
多点找色是在一个矩形区域内查找和颜色值相匹配的点坐标。把返回值分别赋值给intX和intY。在按键中如果没有找到指定的颜色点的话,返回值都是 “-1”。如果它们的值都大于0那么就代表找到了,我们就把鼠标移动到这两个点上去。 FindColor 0,0,1024,768,“0000FF”,intX,intY If intX > 0 And intY > 0 Then MoveTo intX,intY End If 如上代码,在执行的时候,如果有找到“0000FF”的颜色点鼠标就会移动到那一点了。如果没有的话就不会做任何操作了。
区域模糊找色 区域模糊找色是在区域找色的基础上扩展的一个功能。有的颜色点会因为系统或者是硬件的原因导致他们的颜色出现一点偏差或者是我们要找的只是相似的颜色那么模糊找色就可以满足我们的需求了。 和区域找色不同的是,模糊找色多了两个参数。分别是“查找类型”和“颜色相似度”
找图命令中除了区域,相似度,路径,最重要的是图片路径。 图片路径:所以查找的图片源路径,可以是绝对路径。也可以将图片添加到附件,然后使用附件路径。
用户自定义变量和第三章的用户自定义变量是一样的。只是这里可以通过配置的参数的形式插入内容
使用import命令导入插件,可省略Plugin关键字直接使用
找图命令中除了区域,相似度,路径,最重要的是图片路径。 图片路径:所以查找的图片源路径,可以是绝对路径。也可以将图片添加到附件,然后使用附件路径。
用户自定义变量和第三章的用户自定义变量是一样的。只是这里可以通过配置的参数的形式插入内容
按键精灵的插件是通过动态链接库(DLL)的形式提供的。目前支持VC和VB两种开发方式
在按键精灵目录下的plugin目录下有插件的源代码模板工程
右键点击BkgndColor.html,然后以记事本方式打开。当然如果你会使用Dreamweaver编辑。
关注几个注意点就可以了。 第一个是名称说明:GetPixelColor 得到当前坐标的颜色值 而这个标签中的内容必须与插件的命令名称保持一致。然后把Html文件保存到按键精灵Plugin 文件里,这里要注意的是保存的名字要与插件名称保持一致。就可以发现自己写的插件命令也有了类似按键精灵官方说明了
做VC插件,将按键精灵\source目录下的QMPlugin插件制作模版(VC 6.0).zip解压,然后将里面的QMPluginWizard.awx文件复制到\Microsoft Visual Studio\Common\MSDev98\Template下 1.首先打开VC6.0。
点选Projects选项卡,在下面的选项中点选”按键精灵插件”,可以将常用的脚本子程序放在命令库当中,命令库最大的优势是让多个脚本共享一个命令,修改一处就等于修改多处。
命令库的存放地址在按键精灵目录下的lib目录里,以.qml为后缀。
按键精灵提供的多线程功能有5个要用到的命令:
[DimEnv] 解释:定义环境变量。备注:用于多线程之间传递变量值功能
[BeginThread] 格式:{返回线程ID} = BeginThread(过程名) 解释:启动某个线程
[StopThread] 格式:StopThread {线程ID} 解释:停止某个线程
[PauseThread] 格式:PauseThread {线程ID} 解释:暂停某个线程。
[ContinueThread] 格式:ContinueThread {线程ID} 解释:继续某个线程
按键精灵脚本界面 简称 QUI
但ocx界面的致命弱点在于:需要学习一门不同于Q语言的其他语言,并且需要安装和掌握一种不同于按键精灵的其他开发工具。
修改窗口的宽度和高度,但是QUI默认创建出来的界面大小就是605*246。这是因为标准的小精灵模板里面最大只能显示这么大的区域
窗体事件 目前的QUI事件有两个,载入事件和退出事件
编写的格式如下: Event 窗体名称.Load End Event
卸载事件,编写的格式如下: Event Form1.UnLoad End Event
指针介绍 QUI的指针指的是鼠标指针,用于选择控件
标签控件是Windows窗体用于显示用户不能编辑的文本。
它们是用户标识窗体上的对象或显示相应信息以响应程序中的事件。
在QUI在创建标签,需要先在工具栏上点击标签控件。移动鼠标到QUI的窗体上,这时鼠标就会变成“十”字形状
QUI标签的属性总共有9项。其中有4个基本属性和5个位置属性。
名称(Name)、显示(Visible)、有效(Enabled)、标题(Caption)。
位置属性包含:左边(Left)、上边(Top)、宽度(Width)、高度(Height)、显示顺序(ZOrder)。
标签的标题属性名称为Caption
标签的有效属性名称为Enable
在QUI在输入框的属性总共有10项。其中有4个基本属性和5个位置属性外加1个其他属性(控件样式)
基本属性分别是:名称(Name)、显示(Visible)、有效(Enabled)、标题(Caption)。
位置属性分别是:左边(Left)、上边(Top)、宽度(Width)、高度(Height)、显示顺序(ZOrder)。 其他属性为“密码”。
目前输入框有两个事件:内容变化和失去焦点事件。
内容变化事件:就是指输入框的内容发生了变化就会触发的事件。 失去焦点事件:就是指当输入框失去输入焦点时触发的事件。
按钮的属性总共有9项,其中有4个基本属性和5个位置属性。
基本属性分别是:名称(Name)、显示(Visible)、有效(Enabled)、标题(Caption)。
位置属性包含:左边(Left)、上边(Top)、宽度(Width)、高度(Height)、显示顺序(ZOrder)。
按钮只有一个事件——点击事件
多选框提供一个单一选择开关的方法,一个多选框代表一个逻辑的值。它包括一个小框和一个标签。
多选框的属性总共有10项,其中有4个基本属性、5个位置属性和一个其他属性。
基本属性分别是:名称(Name)、显示(Visible)、有效(Enabled)、标题(Caption)。
位置属性包含:左边(Left)、上边(Top)、宽度(Width)、高度(Height)、显示顺序(ZOrder)。
其他属性为:初始选中。
多选框只有一个事件,那就是点击事件。当每次被点击的时候,多选框都会在选中和反选状态来回切换。

浙公网安备 33010602011771号