我们有一个Swing应用程序,目前我需要添加一个功能,当用户不运行应用程序一段时间(例如5分钟)时,该功能可以完成一些工作.我不知道如何实现这个(可能应该监视用户调用的所有动作事件,如果5分钟,甚至没有新的动作引发作业,但不知道如何).任何建议都将不胜感激.
添加系统范围的AWTEventListener以接收您感兴趣的所有AWTEvent.
例如,以下代码将告诉您鼠标何时进入,退出或在您的swing应用程序中单击.每当用户在您的应用程序中键入任何键时,它也会告诉您.根据此信息,您可以启动计时器以跟踪用户"空闲"时间.
Toolkit.getDefaultToolkit().addAWTEventListener(new AWTEventListener() {
@Override
public void eventDispatched(AWTEvent event) {
System.out.println(event);
}
}, AWTEvent.MOUSE_EVENT_MASK | AWTEvent.KEY_EVENT_MASK);
Run Code Online (Sandbox Code Playgroud)
查看一下javadocs,了解您可以收听的事件掩码的完整列表.
| 归档时间: |
|
| 查看次数: |
204 次 |
| 最近记录: |