使用 AutoHotkey 命令將其關閉後顯示器會打開

使用 AutoHotkey 命令將其關閉後顯示器會打開

我使用這兩個快捷鍵來關閉顯示:

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

相關內容