
我使用這兩個快捷鍵來關閉顯示:
Launch_Mail::
#T:: SendMessage, 0x112, 0xF170, 2,, Program Manager
然而,在我使用此熱鍵後,顯示器經常會立即重新開啟。我再按四到七次,它就會再次打開。然後,我稍微調整一下滑鼠並嘗試關閉。有時,它有效,有時則無效。
另外,如果我使用“Launch_Mail”按鈕關閉顯示但它沒有關閉,我會使用“#T”快捷鍵。大多數時候,這是有效的,但有時也不起作用。
是滑鼠的問題還是其他的問題?我是否應該在關閉顯示器時禁用滑鼠?
我嘗試搜尋這個問題,但找不到與我的情況類似的內容。
我不知道這是否有很大關係,但我使用 Windows 8.1 和 AHK v1.1.22.06
答案1
因為看起來您正在使用這裡的腳本:https://autohotkey.com/docs/commands/PostMessage.htm它提供了以下程式碼:
#o:: ; Win+O hotkey that turns off the monitor.
Sleep 1000 ; Give user a chance to release keys (in case their release would wake up the monitor again).
; Turn Monitor Off:
SendMessage, 0x112, 0xF170, 2,, Program Manager ; 0x112 is WM_SYSCOMMAND, 0xF170 is SC_MONITORPOWER.
; Note for the above: Use -1 in place of 2 to turn the monitor on.
; Use 1 in place of 2 to activate the monitor's low-power mode.
return
我必須問:您是否使用完整的腳本,或者只使用一行,因為根據註釋,-1 應該重新打開監視器,這表明您的腳本可能正在連續運行關閉和打開命令。
答案2
可能是釋放熱鍵才再次開啟顯示幕。這可以透過「超時」來解決,例如大衛·梅特卡夫的回答,或簡單地等待熱鍵被釋放然後關閉顯示器。執行此操作的慣用方法是使用修飾符up
(請參閱文件)。
Launch_Mail Up::
#T Up:: SendMessage, 0x112, 0xF170, 2,, Program Manager
答案3
有了這個,你將等待你的密鑰被釋放,只需替換你想要的密鑰,這裡我使用Alt+ Space:
!Space::
KeyWait Alt
KeyWait Space
SendMessage,0x112,0xF170,2,,Program Manager
Return