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