在特定按鍵(切換)或按住按鍵期間停用水平(左/右)滑鼠輸入

在特定按鍵(切換)或按住按鍵期間停用水平(左/右)滑鼠輸入

在 Windows 10 中,我正在尋找一種方法來停用滑鼠在水平或左/右方向上的移動的任何輸入,同時仍允許記錄垂直或上/下方向上的輸入。

允許滑鼠只能上下移動,不能左右移動。如果可以透過熱鍵切換或熱鍵保持來打開和關閉它,那就太理想了。

範例:按住「]」或類似的東西時,停用正在處理的滑鼠的所有水平輸入。釋放後,一切恢復正常。

答案1

嘗試這個

]::
   CoordMode, Mouse
   MouseGetPos, x
   ClipCursor(x, 0, 0, A_ScreenHeight)
return

] Up::
    ClipCursor()  ; Off
return


; https://www.autohotkey.com/boards/viewtopic.php?f=76&t=62856#p445668

ClipCursor(x := "", y := "", w := "", h := "") {
   if p := x != "" {
      VarSetCapacity(RECT, 16, 0), p := &RECT
      for k, v in [x, y, x + w, y + h]
         NumPut(v, p + 4*(k - 1), "Int")
   }
   DllCall("ClipCursor", "Ptr", p)
}

相關內容