在我回答這個問題之前。你會如此友善回到前一個問題,並通過點擊WHITE複選標記將它變成綠色來標記你在那裏收到的答案。
我曾經嘗試過負值並且對結果不滿意,所以我決定關閉計時器而不是使用負值。
#Persistent
#SingleInstance
SetTimer, CheckApp, 4000
Return
CheckApp:
IfWinActive, ahk_class QWidget
{
SetTimer, CheckApp, Off
Click 486, 15
Click 570, 93
}
Return
我刪除了你的睡眠,2000年加入該睡眠命令塊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
現在你可以把窗戶上的AHK腳本的開始菜單和啓動PolyEdit通過[運] + W(或您定義的任何其他關鍵...)
更新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
我按照您的要求將白色複選標記變爲綠色。 我不知道這個功能。 感謝您的優秀回覆! 我使用下面的腳本目前正在接近一個解決方案: #Persistent WinWaitActive,ahk_class TMainForm 發送現在是時候 返回 上面的腳本作品。但它缺乏一個主要特點。 我需要讓它工作,當我關閉 當前PolyEdit窗口和 打開第二個PolyEdit窗口。 現在,這沒有發生。 現在我必須在 打開第二個PolyEdit窗口之前重新加載腳本。 我不想重新加載腳本。這是我迷失的地方。 – user2216119
在這種情況下,爲什麼不使用ahk腳本以熱鍵啓動PolyEdit窗口。請參閱上面的修改腳本 –
我同意羅伯特。我非常感謝您對如何接受答案的意見。我同意你的100%。關於使用熱鍵啓動腳本。是的,這是有效的。但我正在尋找一個沒有熱鍵的腳本。我是否認爲沒有? – user2216119