windows 桌面GUI自動化- 10.pywinauto 鍵盤快捷鍵操作send_keys()

前言

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_keys <p>app = Application('uia').start("notepad.exe") win = app.window(title_re="無標題 - 記事本")</p><h1>ALT+F</h1><p>send_keys("%F")</p><h1>CTR+S</h1><p>send_keys("^S")

windows 桌面GUI自動化- 10.pywinauto 鍵盤快捷鍵操作send_keys()

type_keys() 編輯框輸入

在編輯框中輸入鍵盤操作的示例:

  • 代碼語言:JavaScript
  • 代碼運行次數:0
from pywinauto import Application from pywinauto.keyboard import send_keys</p><p>app = Application('uia').start("notepad.exe") win = app.window(title_re="無標題 - 記事本")</p><h1>直接設置文本值</h1><p>win.child_window(title="文本編輯器").set_text("你好,世界!")</p><h1>回車</h1><p>win.child_window(title="文本編輯器").type_keys("{ENTER}")</p><h1>鍵盤輸入</h1><p>win.child_window(title="文本編輯器").type_keys("hello world! 上海-悠悠")

set_text 和 type_keys 區別

set_text 方法直接設置輸入框的文本值,光標會位于文本的最左邊,按回車鍵后文本會被換行,但不支持快捷鍵操作。type_keys 方法模擬鍵盤字符輸入,支持中文輸入,光標位于文本的最右邊,并且支持快捷鍵操作,推薦使用 type_keys。

? 版權聲明
THE END
喜歡就支持一下吧
點贊6 分享