'**************************************
'作用:模拟键盘操作
'**************************************
'^ctrl
'+Shift
'%ALT
'{ESC}
'{F1}
'{F2}
'**************************************
Option Explicit '用于在文件级强制对该文件中的所有变量进行显式声明。Option Explicit { On | Off },默认为ON
Dim strkey '声明变量
Set strkey = WScript.CreateObject("Wscript.Shell") '创建对象实例
strkey.SendKeys "^+{ESC}" '打开任务管理器CTRL+SHIFT+ESC
strkey.SendKeys "^{ESC}" '打开开始菜单
strkey.SendKeys "^(s)" 'Ctrl+S进行保存
Set strkey = Nothing '销毁对象
对于非组合按键,一般写法为:sendKeys "{F5}",即非组合键加上大括号,可参考QTP help
1.基本键
一般来说,要发送字符可以直接用字符本身来表示,例如要发送字母“x”,使用“WshShell.SendKeys "x"”即可。当然,也可直接发送字符串,例如,要发送按键“happy”,可以使用“WshShell.SendKeys "happy"”。
2.特殊功能键
对于需要与Shift、Ctrl、Alt三个控制键组合的按键,SendKeys使用特殊字符来表示:
Shift---------WshShell.SendKeys "+"
Ctrl---------WshShell.SendKeys "^"
Alt---------WshShell.SendKeys "%"
由于“+”、“^”这些字符用来表示特殊的控制按键了,怎样表示这些按键呢?
只要用大括号括住这些字符即可。例如:
要发送加号“+”,可使用“WshShell.SendKeys "{+}"”
另外对于一些不会生成字符的控制功能按键,也同样需要使用大括号括起来按键的名称。
例如:要发送回车键,需要用“WshShell.SendKeys "{ENTER}"”表示,发送向下的方向键用“WshShell.SendKeys "{DOWN}"”表示。
Space---------WshShell.SendKeys " "
Enter---------WshShell.SendKeys "{ENTER}"
←---------WshShell.SendKeys "{RIGHT}"
↑---------WshShell.SendKeys "{UP}"
F1---------WshShell.SendKeys "{F1}"
Tips:如果需要发送多个重复的单字母按键,不必重复输入该字母,SendKeys允许使用简化格式进行描述,使用格式为“{按键 数字}”。例如要发送10个字母“x”,则输入“WshShell.SendKeys "{x 10}"”即可。