我正在用 Java 制作一个小型游戏项目。在其中,您有一个角色,当“按下”或“拖动”时会朝鼠标的方向射击(你知道,用 Java 的术语来说)。唯一的问题是,如果您停止拖动但仍按住鼠标左键,您将停止拍摄。
有没有办法检测拖动后鼠标按钮是否按下?
注意:鼠标在拖动后不会被感知为“按下”。
我正在用 Java 制作一个小型游戏项目。在其中,您有一个角色,当“按下”或“拖动”时会朝鼠标的方向射击(你知道,用 Java 的术语来说)。唯一的问题是,如果您停止拖动但仍按住鼠标左键,您将停止拍摄。
有没有办法检测拖动后鼠标按钮是否按下?
注意:鼠标在拖动后不会被感知为“按下”。
当按下鼠标按钮和再次释放鼠标按钮时,您将获得信息。如果您想知道两者之间的状态,则需要使用布尔值来存储该信息。
例子:
final boolean[] buttonStates = new boolean[3];
public void mousePressed(MouseEvent e) {
buttonStates[e.getButton()] = true;
}
public void mouseReleased(MouseEvent e) {
buttonStates[e.getButton()] = false;
}
顺便说一句,你会对键盘输入做同样的事情。