1

プレス アンド ホールド キー信号を送信する Python スクリプトを作成しようとしています。現在、私が何とかできたのは次のことだけです。

import win32com.client
shell = win32com.client.Dispatch("Wscript.Shell")
shell.SendKeys("z")

ただし、これは瞬間的なキー押下イベントのみを送信します。私がやりたいのは、次のようなキーダウンとキーアップです。

shell.SendKeys("z{down}")
time.sleep(.25) 
shell.SendKeys("z{up}")

しかし、これを達成するための文書化された方法が見つかりません。

編集:私もこれに沿って何かを試しました:

import time
import win32com.client
import win32api
import win32gui
import win32con

time.sleep(2)
shell = win32com.client.Dispatch("Wscript.Shell")
win32api.SendMessage(win32con.HWND_TOP, win32con.WM_CHAR, 90, 0) 
win32api.SendMessage(win32con.HWND_BROADCAST, win32con.WM_KEYDOWN, 90, 1) 
time.sleep(.25)
win32api.SendMessage(win32con.HWND_BROADCAST, win32con.WM_KEYUP, 90, 1) 

HWND 全体は、私にとって本当に謎です。ドキュメントから、正しいウィンドウを取得する方法がわかりません。また、WM_CHAR は機能しているようですが、WM_KEYDOWN/KEYUP は実際には何もしていません。

4

1 に答える 1

1

とメッセージwin32api.PostMessageの送信に使用できます。パラメータのドキュメントについては、MSDNを参照してください。定数はモジュールで定義されます。WM_KEYDOWNWM_KEYUPwin32con

于 2012-02-14T07:45:20.947 に答える