Java鼠标拖动后

Java鼠标拖动后,java,Java,我正在用Java制作一个小游戏项目。其中有一个字符,当“按下”或“拖动”(用Java的术语来说)时,它会朝鼠标的方向射击。唯一的问题是,如果停止拖动,但仍按住鼠标左键,则停止拍摄 有没有办法检测鼠标按钮在拖动后是否按下 注意:拖动鼠标后,不会感觉到鼠标被“按下”。当按下鼠标按钮和再次释放鼠标按钮时,您将获得信息。如果您想知道两者之间的状态,则需要使用布尔值来存储该信息 例如: final boolean[] buttonStates = new boolean[3]; public void

我正在用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;
}

顺便说一下,您也可以对键盘输入进行同样的操作。

当按下鼠标按钮和再次释放鼠标按钮时,您将获得信息。如果您想知道两者之间的状态,则需要使用布尔值来存储该信息

例如:

final boolean[] buttonStates = new boolean[3];

public void mousePressed(MouseEvent e) {
  buttonStates[e.getButton()] = true;
}

public void mouseReleased(MouseEvent e) {
  buttonStates[e.getButton()] = false;
}

顺便问一下,对于键盘输入,你也会这么做。

你说的“拖动”是什么意思?你能把你所说的具体房产贴出来吗?你能提供一些代码吗?您是否正在使用画布对象、Swing或任何其他API?您将有一个与按钮相关联的鼠标按下和释放事件,y应该能够检测到用户按下按钮和释放的时间。请查看
MouseMotionListener
上的文档,该文档具有
mouseDragged()
,然后看看这个“拖动”是什么意思? 你能把你所说的具体房产贴出来吗?你能提供一些代码吗?您是否正在使用画布对象、Swing或任何其他API?您将有一个与按钮相关联的鼠标按下和释放事件,y应该能够检测到用户何时按下按钮和释放,请查看
MouseMotionListener
上的文档,该文档具有
mouseDragged()
,请查看此文档