AutoIt 键盘操作(send)

3、win切换窗口(键盘按下alt,操作tab键)
操作步骤如下:
AutoITLibrary.send    {ALT DOWN}
AutoITLibrary.send    {tab}
AutoITLibrary.send    {tab}
AutoItLibrary.Send    {ALT UP}

其它键盘操作,请参考:
键盘输入
    [Arguments]    ${keys}  ${flag}=0
    [Documentation]  模拟键盘输入,需要两个参数:
    ...  第一个参数: 需要输入的键盘按键
    ...  第二个参数: 标记变量,可选值,默认为0,
    ...               0:  代表第一个参数${keys}中的!+^#代表特殊按键
    ...               1:  代表第一个参数${keys}中的所有字符都是普通字符串
    ...  举例:
    ...  ^a^c^v!{F4}      代表:Ctrl+a Ctrl+c Ctrl+v Alt+F4
    ...  关于特殊按键的说明:
    ...      如果${flag}为0,则:
    ...     !  代表ALT按键
    ...     +  代表SHIFT按键
    ...     ^  代表CTRL按键
    ...     #  代表WIN按键
    ...  比如:!+a  代表:ALT+SHIFT+a
    ...  其他特殊按键:
    ...  ${flags}为0的时候,还支持下述特殊按键:
    ...     输入  最终的键盘按键
    ...     {!}                     !
    ...     {#}                     #
    ...     {+}                     +
    ...     {^}                     ^
    ...     {{}                     {
    ...     {}}                     }
    ...     {SPACE}                 SPACE
    ...     {ENTER}                 ENTER key on the main keyboard
    ...     {ALT}                   ALT
    ...     {BACKSPACE} or {BS}     BACKSPACE
    ...     {DELETE} or {DEL}       DELETE
    ...     {UP}                    Cursor up
    ...     {DOWN}                  Cursor down
    ...     {LEFT}                  Cursor left
    ...     {RIGHT}                 Cursor right
    ...     {HOME}                  HOME
    ...     {END}                   END
    ...     {ESCAPE} or {ESC}       ESCAPE
    ...     {INSERT} or {INS}       INS
    ...     {PGUP}                  PageUp
    ...     {PGDN}                  PageDown
    ...     {F1} - {F12}            Function keys
    ...     {TAB}                   TAB
    ...     {PRINTSCREEN}           Print Screen key
    ...     {LWIN}                  Left Windows key
    ...     {RWIN}                  Right Windows key
    ...     {NUMLOCK on}            NUMLOCK (on/off/toggle)
    ...     {CAPSLOCK off}          CAPSLOCK (on/off/toggle)
    ...     {SCROLLLOCK toggle}     SCROLLLOCK (on/off/toggle)
    ...     {BREAK}                 for Ctrl+Break processing
    ...     {PAUSE}                  PAUSE
    ...     {NUMPAD0} - {NUMPAD9}    Numpad digits
    ...     {NUMPADMULT}             Numpad Multiply
    ...     {NUMPADADD}              Numpad Add
    ...     {NUMPADSUB}              Numpad Subtract
    ...     {NUMPADDIV}              Numpad Divide
    ...     {NUMPADDOT}              Numpad period
    ...     {NUMPADENTER}            Enter key on the numpad
    ...     {APPSKEY}                Windows App key
    ...     {LALT}                   Left ALT key
    ...     {RALT}                   Right ALT key
    ...     {LCTRL}                  Left CTRL key
    ...     {RCTRL}                  Right CTRL key
    ...     {LSHIFT}                 Left Shift key
    ...     {RSHIFT}                 Right Shift key
    ...     {ALTDOWN}                Holds the ALT key down until {ALTUP} is sent
    ...     {SHIFTDOWN}              Holds the SHIFT key down until {SHIFTUP} is sent
    ...     {CTRLDOWN}               Holds the CTRL key down until {CTRLUP} is sent
    ...     {LWINDOWN}               Holds the left Windows key down until {LWINUP} is sent
    ...     {RWINDOWN}               Holds the right Windows key down until {RWINUP} is sent
    ...     {ASC nnnn}               Send the ALT+nnnn key combination
    AutoItLibrary.Send  ${keys}  ${flag}

键盘输入Alt+F4
    AutoItLibrary.Send  !{F4}

键盘输入Ctrl+Space
    AutoItLibrary.Send  ^{SPACE}

键盘输入Ctrl+a
    AutoItLibrary.Send  ^a

键盘输入Ctrl+c
    AutoItLibrary.Send  ^c

键盘输入Ctrl+v
    AutoItLibrary.Send  ^v

键盘输入Ctrl+s
    AutoItLibrary.Send  ^s

键盘输入Ctrl+p
    AutoItLibrary.Send  ^p

键盘输入Ctrl+Home
    AutoItLibrary.Send  ^{HOME}

键盘输入Ctrl+End
    AutoItLibrary.Send  ^{END}

键盘输入Win+d
    键盘输入  {LWINDOWN}d{LWINUP}

键盘输入Win+r
    键盘输入  {LWINDOWN}r{LWINUP}

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

Send("#r");开始运行
Send("^!+{F6}") ;发送CTRL+ALT+F6组合键

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

Send("{ASC 065}")

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

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

Send("{ASC 2709}")

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

Send("{DEL 4}") ;连续4次按下 DEL 键
Send("{S 30}") ;发送30个字符“S”
Send("+{TAB 4}) ;连续4次按下 SHIFT+TAB

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

Send("{a down}") ;按住按键 A
Send("{a up}") ;松开按键 A

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

$n = 4
Send("+{TAB " & $n & "}")

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

$x = Chr(65)
Send("{" & $x & " 4}")

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

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

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

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

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

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

Send("!f")发送 Alt+f,这是打开记事本的文件菜单的快捷键,您还可以试试其它的!
Send("{DOWN}")移动焦点到下一个菜单项
Send("{UP}")移动焦点到上一个菜单项
Send("{LEFT}")切换到左边的菜单或收缩子菜单
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:按下浏览器中的“后退”按钮
{BROWSER_FORWARD}仅支持2000/XP:按下浏览器中的“前进”按钮
{BROWSER_REFRESH}仅支持2000/XP:按下浏览器中的“刷新”按钮
{BROWSER_STOP}仅支持2000/XP:按下浏览器中的“停止”按钮
{BROWSER_SEARCH}仅支持2000/XP:按下浏览器中的“搜索”按钮
{BROWSER_FAVORITES}仅支持2000/XP:按下浏览器中的“收藏夹”按钮
{BROWSER_HOME}仅支持2000/XP:运行浏览器并转到主页
{VOLUME_MUTE}仅支持2000/XP:切换系统静音状态
{VOLUME_DOWN}仅支持2000/XP:减小系统音量
{VOLUME_UP}仅支持2000/XP:增大系统音量
{MEDIA_NEXT}仅支持2000/XP:在播放器中选择播放下一个轨道(影音媒体)
{MEDIA_PREV}仅支持2000/XP:在播放器中选择播放上一个轨道
{MEDIA_STOP}仅支持2000/XP:使播放器停止播放
{MEDIA_PLAY_PAUSE}仅支持2000/XP:使播放器播放/暂停
{LAUNCH_MAIL}仅支持2000/XP:运行邮件客户端程序
{LAUNCH_MEDIA}仅支持2000/XP:运行播放器(Media player)
{LAUNCH_APP1}仅支持2000/XP:运行用户程序1(我的电脑)
{LAUNCH_APP2}仅支持2000/XP:运行用户程序2(计算器)
  • 2
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值