本文记录了SikuliX中按键操作的方法。
1.控制字符
| 键名 | sikuliX中的命令 |
|---|
| Shift | type(Key.SHIFT) |
| Ctrl | type(Key.CTRL) |
| Alt键 | type(Key.ALT) |
| Tab(制表符) | type(Key.TAB) |
| 大写锁定 | type(Key.CAPSLOCK) |
| 输入 | type(Key.ENTER) |
| 删除 | type(Key.DELETE) |
| 退格键 | type(Key.BACKSPACE) |
| 插入 | type(Key.INSERT) |
| Home | type(Key.HOME) |
| End | type(Key.END) |
| ESC | type(Key.ESC) |
| 空格 | type(Key.SPACE) |
| 视窗 | type(Key.WIN) |
| 换页 | type(Key.PAGE_UP) |
| 向下翻页 | type(Key.PAGE_DOWN) |
| 列印画面 | type(Key.PRINTSCREEN) |
| 数字键盘锁 | type(Key.NUM_LOCK) |
| 滚动锁 | type(Key.SCROLL_LOCK) |
| F1 | type(Key.F1) |
| F2 | type(Key.F2) |
| F3 | type(Key.F3) |
| F4 | type(Key.F4) |
| F5 | type(Key.F5) |
| F6 | type(Key.F6) |
| F7 | type(Key.F7) |
| F8 | type(Key.F8) |
| F9 | type(Key.F9) |
| F10 | type(Key.F10) |
| F11 | type(Key.F11) |
| F12 | type(Key.F12) |
| 光标键:向上 | type(Key.UP) |
| 光标键:向下 | type(Key.DOWN) |
| 光标键:左 | type(Key.LEFT) |
| 光标键:向右 | type(Key.RIGHT) |
| 向上移动光标两次 | type(Key.UP * 2) |
| 向下移动光标两次 | type(Key.DOWN * 2) |
| 向左移动光标两次 | type(Key.LEFT * 2) |
| 向右移动光标两次 | type(Key.RIGTH * 2) |
| 按特定键 | KeyDown(Key.*) 需要使用Region()进行区域设置。 |
| 释放特定键 | KeyUp(Key.*) 需要使用Region()设置区域。 |
2.快捷键
| 常见操作 | 快捷键 | sikuliX中的命令 |
|---|
| 复制 | Ctrl + C | type(“ c”,Key.CTRL) |
| 剪下 | Ctrl + X | type(“ x”,Key.CTRL) |
| 贴上 | Ctrl + V | type(“ v”,Key.CTRL) |
| 搜索 | Ctrl + F | type(“ f”,Key.CTRL) |
| 打印 | Ctrl + P | type(“ p”,Key.CTRL) |
| 撤消 | Ctrl + Z | type(“ z”,Key.CTRL) |
| 重做 | Ctrl + Y ;Ctrl + Shift + Z | type(“ y”,Key.CTRL);type(“ z”,Key.CTRL + Key.SHIFT) |
| 关闭标签 | Ctrl + F4 | type(Key.F4,Key.CTRL) |
| 还原标签 | Ctrl + Shift + T | type(“ t”,Key.CTRL + Key.SHIFT) |
| 浏览器缓存刷新(强制刷新) | Ctrl + F5 | type(Key.F5,Key.CTRL) |
| 关闭窗口 | Alt + F4 | type(Key.F4,Key.ALT) |
| 最小化所有窗口 | Windows + M | type(“ m”,Key.WIN) |
| 显示桌面 | Windows + D | type(“ d”,Key.WIN) |
| 最小化窗口(当窗口为正常大小时)恢复为原始大小(当窗口为最大化时) | Windows +光标键:向下,如果最大化,请执行上述两次。 | type(Key.DOWN,Key.WIN) |
| 窗口最大化 | Windows +光标键:向上 | type(Key.UP,Key.WIN) |
| 切换活动窗口 | Windows + Tab;Windows + Shift + Tab | type(Key.TAB,Key.WIN);type(Key.TAB,Key.WIN + Key.SHIFT) |
| 启动任务管理器 | Ctrl + Shift +ESC | type(Key.ESC,Key.CTRL + Key.SHIFT) |
| 启动资源管理器 | Windows +e | type(“ e”,Key.WIN) |
3.运算符
| 运算 | sikuliX中运算符 |
|---|
| 加成 | + |
| 减法 | – |
| 乘法 | * |
| 除 | / |
| 余数计算 | % |
| 除数的整数部分 | // |
| A的b次方 | A ** B |
| A的负数 | -A |
| 逻辑或 | or |
| 逻辑与 | and |
| 否认 | not |
| a大于b | a> b |
| a小于b | a <b |
| a小于或等于b | a <= b |
| a大于或等于b | a >= b |
| a等于b | a== b |
| a不等于b | a!= b |
通过键盘操作提高了sikulix自动操作的稳定性;运用快捷键更是进一步减少sikulix命令行数;运算符不仅可以用于计算,还可以用于分支条件。综合以上知识,相信你能做一些有趣的RPA程序了,多多练习吧!
另外,如果type(各种按键)失灵了,还可以参照以下代码,用更底层的方式实现同样的功能。
type("e",Key.WIN)
'''
#方法2启动资源管理器
#用底层函数实现按下win键
keyDown(Key.WIN)
wait(0.2)
type("e")
keyUp()
'''
'''
#方法1还原窗口尺寸
#先点击要还原的窗口,再执行!
click(Location(1043, 32))
type(Key.DOWN,Key.WIN)
'''
'''
#方法2还原窗口尺寸
#click(Location(1043, 32))
wait(1)
keyDown(Key.WIN)
wait(0.2)
type(Key.DOWN)
wait(0.2)
keyUp()
'''