我在游戏中使用getDWheel方法,如下所示:
public void checkMouseWheel() {
if (highLight != null) {
if (Mouse.getDWheel() < 0) {
System.out.println("DOWN");
}
if (Mouse.getDWheel() > 0){
System.out.println("UP");
}
}
每次检查输入时都会调用此方法。当我使用滚轮时,程序仅在向上滚动时到达DOWN部分,如果没有...则不会进入...不管我做什么,只有向下滚动才有效。
编辑:当我向下滚动游戏时,它将打印“ DOWN”,但是当我向上滚动游戏时,则不会打印任何内容。
最佳答案
根据javadoc,Mouse.getDWheel()
“返回自上次调用getDWheel()以来的车轮运动”
因此,当您第一次调用它时,信息将被“清除”,因此第二次调用将始终返回0。尝试进行以下小的更改以解决此问题:
public void checkMouseWheel() {
if (highLight != null) {
int dWheel = Mouse.getDWheel();
if (dWheel < 0) {
System.out.println("DOWN");
} else if (dWheel > 0){
System.out.println("UP");
}
}