输入与键盘
输入与键盘
keys()、enter()、input(ctrl=…) 里的 ctrl 都是 UIA 控件对象,需先用 find() 或 wait_ctrl() 拿到,再传给后续方法:
键盘两种方式对比:
keys() 在 post/mouse 下仅支持下列单键字面量(与 _VK_MAP 一致):{Enter} {Esc} {Tab} {PageUp} {PageDown} {Home} {End} {Up} {Down} {Left} {Right} {Delete} {BackSpace} {Space} {Insert} {F1}–{F8}。
常用 VK 码速查
修饰键:
功能键(hotkey 组合用 VK;keys 在 post 模式仅支持下列单键字面量):
字母与数字(hotkey 用 VK;规律:A–Z = 0x41–0x5A,0–9 = 0x30–0x39):
常见组合示例:
- 组合键优先
hotkey(0x11, 0x43)等形式- 复杂 SendKeys 字符串(含
{Ctrl})用keys('…', ctrl),且需ctrl来自步骤 ①paste()内部调用keys('{Ctrl}v', ctrl),同样需要控件或 uia 模式
API 参考
输入与键盘
✨input
向目标控件输入文字;会先 click(ctrl) 聚焦。
参数:
返回值:
- 类型:
WinAuto
✨keys
SendKeys 语法按键:'{Enter}'、'{Ctrl}a'、'{PageDown}' 等。
参数:
返回值:
- 类型:
WinAuto
说明:
不支持时抛 RuntimeError。
✨hotkey
虚拟键码组合键,如 Ctrl+A。
参数:
返回值:
- 类型:
WinAuto
说明:
UIA 模式不支持,请用 keys('{Ctrl}a', ctrl)。
✨enter
等同 keys('{Enter}', ctrl, mode=mode)。
参数:
返回值:
- 类型:
WinAuto
✨send_msg
click → input → enter 一步发送消息。
参数:
返回值:
- 类型:
WinAuto
✨clear_input
清空输入框:UIA 可 ValuePattern.SetValue('');否则全选+删除。
参数:
返回值:
- 类型:
WinAuto
✨type_and_send
clear_input → input → enter 一步完成(清空后输入并发送)。
参数:
返回值:
- 类型:
WinAuto
✨select_all
全选输入框内容。
参数:
返回值:
- 类型:
WinAuto
说明: