我想知道是否可以锁定光标的x轴或y轴?
我一直在玩 CGWarpMouseCursorPosition(),只要我想锁定一个轴,将鼠标的x或y位置设置为 mouseMoved()中的某个值,但这似乎不起作用。
谢谢!
修改
如果按下X键:
if !xLocked {
xLocked = true
xLockPos = view!.window!.mouseLocationOutsideOfEventStream.x
}
如果按下Y键:
if !yLocked {
yLocked = true
yLockPos = view!.window!.mouseLocationOutsideOfEventStream.y
}
我在更新()和 mouseMoved()中尝试了以下内容:
if xLocked {
CGWarpMouseCursorPosition(CGPoint(x: xLockPos, y: view!.window!.mouseLocationOutsideOfEventStream.y))
}
if yLocked {
CGWarpMouseCursorPosition(CGPoint(x: view!.window!.mouseLocationOutsideOfEventStream.x, y: yLockPos))
}
无法弄清楚我哪里出错了。再次感谢。
答案 0 :(得分:1)
您可以使用CGAssociateMouseAndMouseCursorPosition
断开指针移动与鼠标移动。然后,您可以使用CGWarpMouseCursorPosition
在接收鼠标事件时仅沿一个轴移动鼠标。