全部产品
云市场

rpa.win32中有关key_send的用法

key_send命令的可用按键列表
快速了解 key_send ( “按键” [, 标志] ) 命令。

^ Ctrl! Alt+Shift

Win(徽标键)

key_send 可发送所有的 ASCII 码及扩展 ASCII 码字符(0-255),若要发送 UNICODE 编码的字符则必须使用“ASC”选项加上您要发送的字符代码(见下面的 {ASC})。

如果要发送 ASCII 字符 A 则参考下例(相当于 ALT+065,按住ALT键并在数字键盘上顺序按下065)

  1. rpa.win32.key_send("{ASC 065}")

(在使用两位数的 ASCII 码时必须在前面加一个 0,否则将使用 437号代码页)。

如果要发送 UNICODE 字符则输入该字符代码,例如下例将发送一个中文字符

  1. rpa.win32.key_send("{ASC 2709}")

可参考下例重复发送某按键:

  1. rpa.win32.key_send("{DEL 4}") ;连续4次按下 DEL
  2. rpa.win32.key_send("{S 30}") ;发送30个字符“S
  3. rpa.win32.key_send("+{TAB 4}) ;连续4次按下 SHIFT+TAB

如果要按住(保持按下状态)某个按键(通常用于游戏中)

  1. rpa.win32.key_send("{a down}") ;按住按键 A
  2. rpa.win32.key_send("{a up}") ;松开按键 A

如果要用变量来指定重复发送的次数,参考下例:

  1. n = 4
  2. rpa.win32.key_send("+{TAB %s }" % n)

如果要用变量来指定要重复发送的 ASCII 字符(比如 A),参考下例:

  1. x = chr(65)
  2. rpa.win32.key_send("{ %s 4}" % x)

大多数笔记本电脑的键盘上都会有一个特殊的 Fn 键,此键无法被模拟。

注意,若把标志参数的值设为1则“按键”参数将被原样发送。如果某些文本是从变量里拷贝而来,而您又希望完全按原样发送这些文本的话,就应该使用这一设置。

key_send 是非常有用的一个函数/命令,因为我们可用它来对窗口进行操作而无需使用鼠标。

例如,先打开文件夹选项窗口(位于控制面板),然后请尝试执行下面这些语句:

key_send(“{TAB}”) 切换到(焦点切换)下一个控件(按钮、复选框等)
key_send(“+{TAB}”) 切换到上一个控件
key_send(“^{TAB}”) 切换到下一个窗口标签
key_send(“^+{TAB}”) 切换到上一个窗口标签
key_send(“{SPACE}”) 可用来切换复选框的选中状态或点击某个按钮
key_send(“{+}”) 通常用来选中某个复选框(如果它“确实是”复选框的话)
key_send(“{-}”) 通常用来取消选中某个复选框
key_send(“{NumPadMult}”) 完全展开 SysTreeView32 控件内显示的文件夹

组合 Alt 键使用可访问菜单项,请打开记事本窗口然后尝试执行下面这些语句:

key_send(“!f”) 发送Alt+f,这是打开记事本的文件菜单的快捷键,您还可以试试其它的!
key_send(“{DOWN}”) 移动焦点到下一个菜单项
key_send(“{UP}”) 移动焦点到上一个菜单项
key_send(“{LEFT}”) 切换到左边的菜单或收缩子菜单
key_send(“{RIGHT}”) 切换到右边的菜单或展开子菜单

如果您对快捷键(Alt+F4、PrintScreen、Ctrl+C等等)的重要性还不太了解,请查看 Windows 的帮助信息(按下热键 Win+F1即可)以获得关于快捷键的完整列表。

Send 命令(无标志参数) 键击结果
{!} !
{#} #
{+} +
{^} ^
{{} {
{}} }
{SPACE} 空格
{ENTER} 主键盘区的 回车键
{ALT} ALT
{BACKSPACE} 或 {BS} 退格
{DELETE} 或 {DEL} 删除(DELETE)
{UP} 向上箭头
{DOWN} 向下箭头
{LEFT} 向左箭头
{RIGHT} 向右箭头
{HOME} HOME
{END} END
{ESCAPE} 或 {ESC} ESC键
{INSERT} 或 {INS} INS(Insert)
{PGUP} PGUP(PageUp)
{PGDN} PGDN(PageDown)
{F1} - {F12} 功能键
{TAB} TAB
{PRINTSCREEN} PRINTSCREEN
{LWIN} 左徽标键
{RWIN} 右徽标键
{NUMLOCK} NUMLOCK
{CTRLBREAK} Ctrl+Break
{PAUSE} PAUSE
{CAPSLOCK} CAPSLOCK
{NUMPAD0} - {NUMPAD9} 数字键盘上的 数字键
{NUMPADMULT} 数字键盘上的 乘号
{NUMPADADD} 数字键盘上的 加号
{NUMPADSUB} 数字键盘上的 减号
{NUMPADDIV} 数字键盘上的 除号
{NUMPADDOT} 数字键盘上的 点号
{NUMPADENTER} 数字键盘上的 回车键
{APPSKEY} Windows 应用程序键
{LALT} 左 ALT 键
{RALT} 右 ALT 键
{LCTRL} 左 CTRL 键
{RCTRL} 右 CTRL 键
{LSHIFT} 左 Shift 键
{RSHIFT} 右 Shift 键
{SLEEP} 系统休眠(SLEEP)键
{ALTDOWN} 按住 ALT 键直到发送 {ALTUP} 为止
{SHIFTDOWN} 按住 SHIFT 键直到发送 {SHIFTUP} 为止
{CTRLDOWN} 按住 CTRL 键直到发送 {CTRLUP} 为止
{LWINDOWN} 按住左徽标键直到发送 {LWINUP} 为止
{RWINDOWN} 按住右徽标键直到发送 {RWINUP} 为止
{ASC nnnn} 发送 ALT+nnnn 组合键
{BROWSER_BACK} 仅支持2000/XP:按下浏览器中的“后退”按钮