我正在尝试使用 LWJGL Mouse类获取鼠标坐标。默认情况下,LWJGL 将值钳制为 [0, width] 和 [0, height],因此坐标始终位于窗口内,即使鼠标移出窗口也是如此。
我尝试将setClipMouseCoordinatesToWindow设置为 false,但什么也没发生;鼠标仍然被夹在窗口上。我首先尝试在初始化期间将其设置为 false,然后每次调用 Mouse.getX() 或 getY()。都没有奏效。我知道有一个属性要设置,但它也不起作用,而且它似乎也已被弃用。
我只在我的更新方法(Slick2D 提供的那个)中调用鼠标函数。我不知道我做错了什么......我没有手动调用 Mouse.poll(),我认为 Slick2D 会处理这个问题,但我确实尝试手动调用它以防万一,但它没有无论如何都行不通。
编辑:我也尝试过System.setProperty("org.lwjgl.input.Mouse.allowNegativeMouseCoords", "true");
,但它也没有工作,即使它似乎正是我需要的。
编辑:如果我按住鼠标按钮,这似乎有效,但由于某些 Windows 限制,否则无效。来源