我有一个应用程序,该应用程序运行计时器以检查空闲时间,并且一旦10秒钟没有任何活动,该应用程序将关闭。我有近100个屏幕,我想跟踪所有屏幕上的不活动秒数。我很难一一在所有按钮,文本框和标签框中编写处理事件。我要做的是在用户对应用程序的每次操作上增加10秒。即使将其移动10秒钟,也不会再关闭10秒钟。有什么办法可以有效地解决这个问题?

最佳答案

我建议以下处理程序:

final Timer tm = new Timer(1000, new ActionListener() {
    @Override
    public void actionPerformed(ActionEvent e) {
        System.out.println("10 SECONDS AND NOTHING HAPPENED");
    }
});
tm.start();
Toolkit.getDefaultToolkit().addAWTEventListener(new AWTEventListener() {
    @Override
    public void eventDispatched(AWTEvent event) {
        tm.restart();
    }
}, -1);

09-10 07:36
查看更多