请问如何用VB程序来模拟键盘操作
发布网友
发布时间:2022-05-07 15:06
我来回答
共2个回答
热心网友
时间:2022-06-30 10:44
set ws=createobject("wscript.shell")
ws.sendKeys "^{esc}r"VBS中SendKeys的基本应用模拟键盘操作,将一个或多个按键指令发送到指定Windows窗口来控制应用程序运行,
其使用格式为:object.SendKeys string
“object”:表示WshShell对象
“string”:表示要发送的按键指令字符串,需要放在英文双引号中。
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}"”即可。
实例:
----------------------------------------------------
按下F5刷新桌面
Dim WshShell,Path,i
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.SendKeys "{F5}"
----------------------------------------------------
电脑的自动重启
set WshShell = CreateObject("WScript.Shell")
WshShell.SendKeys "^{ESC}u"
WshShell.SendKeys "R"
----------------------------------------------------
启动任务管理器
set WshShell = CreateObject("WScript.Shell")
WshShell.SendKeys "^+{ESC}"
热心网友
时间:2022-06-30 10:45
sendkey 函数
请问如何用VB程序来模拟键盘操作
1.基本键 一般来说,要发送的按键指令都可以直接用该按键字符本身来表示,例如要发送字母“x”,使用“WshShell.SendKeys "x"”即可。当然,也可直接发送多个按键指令,只需要将按键字符按顺序排列在一起即可,例如,要发送按键“happy”,可以使用“WshShell.SendKeys "happy"”。2.特殊功能键 对于需要...
单片机汇编程序
单片机汇编程序是用汇编语言编写的程序,用于控制单片机的操作。汇编语言是一种比较接近计算机硬件语言的低级语言,相对于高级语言来说更容易理解和实现。下面是单片机汇编程序的基本步骤:1. 将代码和数据汇编到规定的段中。2. 在存储器中用未初始化的变量保留空间。3. 控制汇编后列表文件的格式,包括初始化存储器、汇编条件块、定义全局变量等。4. 规定汇编器可以从中获得宏的库,产生符号化的调试信息。模块控制伪指令包括:NAME,PROGRAM—程序模块的开始,MODULE,LIBRARY—库模块的开始,ENDMOD—当前汇编模块的结束,END—汇编文件的结束等。5…MAIN: MOV SP,#50H MOV DPTR,#TAB;读入字模指针 MOV 30H,DPL; 存起来 ;堆栈低8位 MOV 31H,DPH ;堆栈高8位 MOV 32H,30H;再记录指针,留作移动了多少位的判断 用。 MOV 3H,31H ;3H记录字模数据的高位地址 INC 3H;3H高位地址+5,表示数据有5X25...
VB实现软键盘输入
VB里面,有一个函数SendKeys,可以对有焦点的窗口发送按键来模拟输入。你先自己做一些按钮(可以使用控件数组),然后SendKeys 键值名称,这样就可以完成软键盘输入了。函数用法如下:SendKeys "{Enter}" �0�2 �0�2 �0�2 �0ÿ...
VB6模拟键盘事件
添加一个commandbutton,启动后点击command1激发事件 完整代码:Option Explicit Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal Scan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Lo...
键盘的按键在VB代码里怎么表示
(1) 用API函数keybd_event,这个函数可以用来模拟一个键盘事件,它的VB声明为: Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long) 参数bVk表示要模拟的按键的虚拟码,bScan表示该按键的扫描码(一般可以...
VB如何实现软键盘功能?
单击相应的键时模拟按键或直接输出到目标;模拟按键时可行的,直接输出必须获得句柄才行,具体分析;给你提供模拟按键代码:Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal Scan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)Private Sub Timer1_Timer(...
VB 怎么模拟键盘 输入,包括键盘的每一个健 TAB 也要?
tab是 "{TAB}".===SendKeys 语句 将一个或多个按键消息发送到活动窗口,就如同在键盘上进行输入一样。语法SendKeys string[, wait]SendKeys 语句的语法具有以下几个命名参数:部分 描述 string 必需的。字符串表达式,指定要发送的按键消息。 Wait 可选的。指定等待方式的 BooleandefBooleanDataTyp...
利用VB如何模拟键盘 按键
在vb里有一套key常量,比如vbKeyA 就是A键 keybd_event vbKeyA,0,0,0 就是按下A 完整代码:在窗体上放一个Timer,interval设成1000 Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)dim ...
VB编写按键程序.
vbs SendKey用法 简单说,这个命令就是模拟键盘操作,将一个或多个按键指令发送到指定Windows窗口来控制应用程序运行,其使用格式为:object.SendKeys string "object":表示WshShell对象 "string":表示要发送的按键指令字符串,需要放在英文双引号中.1.基本键 一般来说,要发送的按键指令都可以直接用该按键字符...
用VB写一个小程序可以代替键盘输入
'1:按键盘的 ALT+TAB(是先按ALT然后不松开ALT按TAB 目的就是为了切换)SendKeys "%{TAB}"'2:按键盘的 TAB(4下)For i = 1 To 4 SendKeys "{TAB}"Next i '3: 按键盘的 1 SendKeys "1"'4: 按键盘的 2 SendKeys "2"'5: 按键盘的 1 SendKeys "1"'6: 按键盘的 2 SendKeys "...
VB 模拟按键 简单的例子
End Sub Private Sub Form_Load()Command1.Caption = "开始"Command2.Caption = "停止"Timer1.Interval = 200 Timer1.Enabled = False End Sub Private Sub Timer1_Timer()If Timer - k1 >= 2 Then '每隔2000毫秒按一次大键盘的数字1 SendKeyToWnd vbKey1 k1 = Timer End If End Sub ...