按键精灵开发者认证4级考试问答题(部分,2016年2月更新)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
//实际分数:90,第2题扣了10分
//第2题给出扣10分的写法以及个人推荐的修改后写法
1、编写一段代码,获取记事本窗口中文本编辑器的句柄。要求:无论记事本窗口标题是什
么,脚本都能成功获取窗口句柄。
Hwnd = Plugin.Window.Find("Notepad", 0)
//查找窗口类名("Notepad")或者标题(0),返回找到的句柄Hwnd
Hwnd = Plugin.Window.FindEx(Hwnd, 0, "Edit", 0)
//根据父窗口句柄(Hwnd)查找子窗口匹配类名("Edit")或者匹配标题(0),返回找到匹配的句柄Hwnd
2、编写一个函数,实现SayString相似功能的函数,只要能够输入英文即可
//测试代码
//x = "Hello"
//MySayString x, 1000
//扣10分的写法:没有区分大小写
//函数名称:MySayString(str,dtime)
//函数功能:实现和SayString类似的功能(仅支持英文)
//传入参数:str:英文字符串dtime:延时操作时间
//返回参数:无
Function MySayString(str,dtime)
strLen = len(str) //获取输入字符串长度
For i = 1 To strLen
Delay dtime
KeyPress Mid(str,i,1) , 1
Next
End Function
//个人推荐的修改后写法
//函数名称:MySayString(str,dtime)
//函数功能:实现和SayString类似的功能(仅支持英文)
//传入参数:str:英文字符串dtime:延时操作时间
//返回参数:无
//参考:/p/3570413748
Function MySayString(str,dtime)
strLen = len(str) //获取输入字符串长度
For i = 1 To strLen
mychar= Mid(str,i,1) //截取单个字符
If "A" <= mychar and mychar <= "Z" Then
Delay dtime
KeyPress "CapsLock", 1
Delay dtime
KeyPress mychar, 1
Delay dtime
KeyPress "CapsLock", 1
ElseIf "a" <= mychar and mychar <= "z" Then
Delay dtime
KeyPress mychar , 1
End If
Next
End Function
3、以下代码运行后未出现弹窗,请简述找不到图的可能原因(至少三个)FindPic 0, 0, 800, 600, "Attachment:\ajjl.bmp", 1.0, ajjlbmpX, ajjlbmpY
If ajjlbmpX > 0 And ajjlbmpY > 0 Then
MessageBox "找到图片"
End If
1、查找的区域内没有同附件相匹配的图片。
2、匹配的图片不在查找范围内
3、相似度的设定太高
4、附件ajjl.bmp可能不存在