AutoHotKey(AHK)で非アクティブウィンドウ(裏窓)を操作する方法

AutoHotKey

AutoHotKeyで一般的に使用されている「MouseClick」や「MouseMove」を使用する場合、該当のウィンドウをアクティブにしておかなくてはいけません。

これではPCの操作が奪われてしまうので、裏で作業を行わせたい場合に不便です。

そこで今回は、非アクティブウィンドウでもAutoHotKeyを使用してマウスクリックの操作を行う方法を紹介します。

スポンサーリンク

Step1 ウィンドウを指定する

非アクティブウィンドウの指定方法

まずは対象となるウィンドウを指定します。「MouseGetPos」に頼らずにウィンドウを取得するには「WinExist()」が便利です。

; メモ帳のウィンドウを取得する
HWND := WinExist("ahk_class Notepad")

変数の「HWND」にはウィンドウのIDが入ります。

非アクティブウィンドウの操作方法

上記で取得したメモ帳のウィンドウを操作するには、ウィンドウの指定を以下のようにします。

ahk_id %HWND%

Step2 指定したウィンドウをクリックする

非アクティブウィンドウをクリックする場合は「ControlClick」を使用します。

ControlClick コマンドの使い方
ControlClick [,
  モード,
  タイトル,
  ウィンドウテキスト,
  ボタン名,
  クリック回数,
  オプション,
  除外タイトル,
  除外テキスト
]

上記で取得したメモ帳を操作するには以下のようにします。

; X:55,Y:77の位置を左クリックする
ControlClick, x55 y77, ahk_id %HWND%

; X:55,Y:77の位置をダブルクリックする
ControlClick, x55 y77, ahk_id %HWND%, , L, 2

; X:55,Y:77の位置を右クリックする
ControlClick, x55 y77, ahk_id %HWND%, , R

コメント

タイトルとURLをコピーしました