gpt4 book ai didi

java - 在Java中,如何找到自上次鼠标移动以来的时间?

转载 作者:行者123 更新时间:2023-12-01 15:00:14 25 4
gpt4 key购买 nike

例如,如果我在 JFrame 中绘制了一个圆圈,并且如果我将鼠标悬停在它上面三秒钟,我想在它上面进行绘制。

我有一个 MouseMotionListener,它告诉我 JFrame 中光标的位置,但到目前为止就这样了。

public void mouseMoved(MouseEvent e)
{
PointerInfo a = MouseInfo.getPointerInfo();
cursorPos = a.getLocation();
SwingUtilities.convertPointFromScreen(cursorPos, e.getComponent());
}

我对 Action 监听器还很陌生。如果我想测试鼠标是否没有移动,我应该添加什么?

另外,我只是好奇,为什么会这样MOUSE_MOVED在MouseEvent中被认为是一个int?

最佳答案

回顾你的问题。

Why is it that MOUSE_MOVED in MouseEvent is considered an int?

所有鼠标常量都是整数。这就是 1.5 版本之前的 Java 中枚举的方式。

How do I find the time since the mouse last moved?

在 mouseMoved 方法中,您将当前时间保存在 GUI 模型中的某个位置。然后,您在 GUI 模型中编写一个返回空闲时间的方法。

idleTime = System.currentTimeMillis() - savedTimeinMillis.

将空闲时间除以 1000 秒。

关于java - 在Java中,如何找到自上次鼠标移动以来的时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13766579/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com