この質問に答える前に。前の質問に戻って、そこで受け取った回答にマークを付けてください。白いチェックマークをクリックして緑色に変えてください。
負の値を試したことがありますが、結果に満足できなかったので、負の値を使用する代わりに、常にタイマーをオフにすることにしました。
#Persistent
#SingleInstance
SetTimer, CheckApp, 4000
Return
CheckApp:
IfWinActive, ahk_class QWidget
{
SetTimer, CheckApp, Off
Click 486, 15
Click 570, 93
}
Return
あなたの Sleep, 2000 を削除しました。この sleep コマンドを追加すると、ahk が 50% の時間 (50% が睡眠中) ブロックされ、何も追加されません。別のアプリケーションがその 2 秒でフォーカスを盗む可能性さえあるため、マウス クリックが別のアプリケーションに移動する可能性があります...マウス クリックを使用する必要がありますか、それともキーボード ショートカットを使用できますか。メニューが移動または拡大/縮小すると、マウスの位置が不安定になる傾向があります。
アップデート
#Persistent
#SingleInstance
Return ; Prevent the [Win]+w from executing on startup of script.
#w:: ; [Win]+w launches PolyEdit, waits for window and sends two mouse clicks.
Run, path to the PolyEdit window.exe
WinWaitActive, ahk_class QWidget
Sleep, 1000
Click 486, 15
Click 570, 93
Return
これで、Windows のスタート メニューに ahk スクリプトを配置し、[Win]+w (または定義したその他のキー) で PolyEdit を起動できます。
更新 2
アプリを起動すると、スクリプトをトリガーするために使用できるアクション (アイコンをクリックするか、ショートカットを押す) が発生するため、なぜこれを行う必要があるのか わかりません。バックグラウンドで常にチェックを実行する必要があります。KingSoft のように見えるアイコンを作成できますが、実際には ahk スクリプトです。
しかし、ほら!
#Persistent
#SingleInstance
SetTimer, CheckApp, 400
Return
InitiateKS := true
CheckApp:
IfWinExist, ahk_class QWidget
{
If InitiateKS
{
InitiateKS := false
WinActivate, ahk_class QWidget
TrayTip, KingSoft, Started, 1
;Click 486, 15
;Click 570, 93
}
}
Else ; if no KingSoft is running
{
InitiateKS := true
}
Return