我正在用Java编写一个游戏,需要有鼠标交互。我本来打算使用 MouseAdapter,但我研究了一些,它似乎没有任何方法可以在不执行单击或操作的情况下确定鼠标指针的位置...推荐的方法是什么做这个?
几个问题:
鼠标“位置”是指鼠标相对于显示器边界、游戏边界的位置,还是表示为相对于先前位置的移动?
如何在窗口应用程序中禁用鼠标指针? (即第一人称射击游戏中,鼠标移动会旋转玩家 View 而不是移动指针)这可能吗?
最佳答案
看看MouseMotionListener 。这将允许您跟踪鼠标移动。它将为您提供鼠标在其所连接的组件中的位置。但如果你看 SwingUtilities类中有一些方便的方法可以将点转换为屏幕或其他组件或监视器。
对于光标,您可以选择为光标设置自己的位图,您可以查看here 。或者对于更新的 SO 答案,您可以查看 here 。因此,您可以隐藏光标,或将其设置为空位图,然后拦截鼠标移动和事件来控制您的 View 。
关于Java鼠标操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1634639/