特定のキーを押す(切り替え)またはキーを押したままにしている間、水平(左/右)マウス入力を無効にする

特定のキーを押す(切り替え)またはキーを押したままにしている間、水平(左/右)マウス入力を無効にする

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)
}

関連情報