在Java中,如何查找上次鼠标移动后的时间?
比方说,如果我在JFrame中画了一个圆,如果我在上面悬停三秒钟,我想在上面画画 我有一个MouseMotionListener,它告诉我JFrame中光标的位置,但到目前为止,仅此而已在Java中,如何查找上次鼠标移动后的时间?,java,swing,awt,mouseevent,mousemotionevent,Java,Swing,Awt,Mouseevent,Mousemotionevent,比方说,如果我在JFrame中画了一个圆,如果我在上面悬停三秒钟,我想在上面画画 我有一个MouseMotionListener,它告诉我JFrame中光标的位置,但到目前为止,仅此而已 public void mouseMoved(MouseEvent e) { PointerInfo a = MouseInfo.getPointerInfo(); cursorPos = a.getLocation(); SwingUtilities.convertPointFromScreen(
public void mouseMoved(MouseEvent e)
{
PointerInfo a = MouseInfo.getPointerInfo();
cursorPos = a.getLocation();
SwingUtilities.convertPointFromScreen(cursorPos, e.getComponent());
}
我对动作听众还是很陌生。如果我想测试鼠标是否不移动,我应该添加什么
还有,我只是好奇,为什么在MouseEvent中被认为是int 回顾你的问题 为什么在MouseEvent中移动的MOUSE_被认为是int 所有鼠标常量都是整数。在1.5版之前的Java中,枚举就是这样完成的 如何查找鼠标上次移动后的时间 在mouseMoved方法中,将当前时间保存在GUI模型中的某个位置。然后在GUI模型中编写一个返回空闲时间的方法
idleTime = System.currentTimeMillis() - savedTimeinMillis.
您将空闲时间除以1000秒。“查找自”使用单发挥杆后的时间。您确定这不适合a吗?“为什么在MouseeEvent中移动的鼠标被视为int”-它是静态的最终int;这通常被称为常数,一个在任何时候都不会改变的值。常数往往是一个整数,但您将一个变量绑定到它(鼠标移动)以给它一个人类可读的名称。