我正在使用
Java中的一个简单的2D游戏引擎,并且没有遇到FSEM,缓冲策略等问题;我的问题是鼠标光标.在窗口模式下,我可以隐藏鼠标光标,没有问题,通过使用我的JFrame中的setCursor()设置一个完全透明的光标.但是,在调用device.setFullScreenWindow(this)进入FSEM后,鼠标光标返回,后来对setCursor()的调用将其设置回我的空白光标没有任何效果.调用device.setFullScreenWindow(null)允许我再次摆脱光标 – 只有当我在FSEM中,我无法摆脱它.
我在JDK 6下工作,目标平台是JDK 5.
更新:我已经做了一些更多的测试,看起来这个问题发生在MacOS X 10.5 w / Java 6u7,但不是Windows XP SP3与Java 6u7.所以,它可能是Mac版本的JVM中的一个错误.
解决方法
尝试创建自定义不可见的游标:
Toolkit toolkit = Toolkit.getDefaultToolkit(); Point hotSpot = new Point(0,0); BufferedImage cursorImage = new BufferedImage(1,1,BufferedImage.TRANSLUCENT); Cursor invisibleCursor = toolkit.createCustomCursor(cursorImage,hotSpot,"InvisibleCursor"); setCursor(invisibleCursor);