前言
pywinauto 库支持通过 send_keys() 方法进行快捷键操作。以下是按键对应的符号和名称:
- 代码语言:JavaScript
- 代码运行次数:0
+
组合按键
| 按键 | 对应参数 |
|---|---|
| Ctrl+S(保存) | ^s |
| Ctrl+A(全选) | ^a |
| Ctrl+Enter | ^{ENTER} |
| Ctrl+Shift+S | ^+s |
快捷键操作
send_keys() 方法的相关源码如下:
- 代码语言:JavaScript
- 代码运行次数:0
def send_keys(keys, pause=0.05, with_spaces=False, with_tabs=False, with_newlines=False, turn_off_numlock=True, vk_packet=True):
"""Parse the keys and type them"""
keys = parse_keys(keys, with_spaces, with_tabs, with_newlines, vk_packet=vk_packet)
for k in keys:
k.run()
time.sleep(pause)
SendKeys = deprecated(send_keys)快捷键操作记事本示例
- 代码语言:JavaScript
- 代码运行次数:0
from pywinauto import Application from pywinauto.keyboard import send_keysapp = Application('uia').start("notepad.exe") win = app.window(title_re="无标题 - 记事本")
ALT+F
send_keys("%F")
CTR+S
send_keys("^S")

type_keys() 编辑框输入
在编辑框中输入键盘操作的示例:
AutoIt v3 版本, 这是一个使用类似 BASIC 脚本语言的免费软件, 它设计用于 Windows GUI(图形用户界面)中进行自动化操作. 利用模拟键盘按键, 鼠标移动和窗口/控件的组合来实现自动化任务. 而这是其它语言不可能做到或无可靠方法实现的(比如VBScript和SendKeys). AutoIt 非常小巧, 完全运行在所有windows操作系统上.(thesnow注:现在已经不再支持win 9x,微软连XP都能放弃, 何况一个win 9x支持), 并且不需要任何运行库. AutoIt
- 代码语言:JavaScript
- 代码运行次数:0
from pywinauto import Application from pywinauto.keyboard import send_keysapp = Application('uia').start("notepad.exe") win = app.window(title_re="无标题 - 记事本")
直接设置文本值
win.child_window(title="文本编辑器").set_text("你好,世界!")
回车
win.child_window(title="文本编辑器").type_keys("{ENTER}")
键盘输入
win.child_window(title="文本编辑器").type_keys("hello world! 上海-悠悠")
set_text 和 type_keys 区别
set_text 方法直接设置输入框的文本值,光标会位于文本的最左边,按回车键后文本会被换行,但不支持快捷键操作。type_keys 方法模拟键盘字符输入,支持中文输入,光标位于文本的最右边,并且支持快捷键操作,推荐使用 type_keys。










