如何判断用户上次按键(或移动鼠标)的时间?

时间:2008-08-05 19:06:41

标签: language-agnostic

在Win32环境中,您可以在Microsoft documentation中使用GetLastInputInfo API调用。基本上,此方法返回与用户上次提供输入时相对应的最后一个刻度,并且您必须将其与当前刻度进行比较以确定多长时间之前。

Xavi23cr在codeproject处有一个很好的C#示例。

有关其他环境的建议吗?

2 个答案:

答案 0 :(得分:3)

对于Linux,我知道Pidgin必须确定空闲时间,以便在一段时间后将您的状态更改为远离。您可以打开源代码,看看是否可以找到执行所需操作的代码。

答案 1 :(得分:1)

你似乎在Nathan回答了你自己的问题;-) “GetLastInputInfo”是要走的路。

一个技巧是,如果您的应用程序在桌面上运行,并且用户连接到虚拟机,则GetLastInputInfo将不报告任何活动(因为主机上没有活动)。

这可能与您想要的行为有所不同,具体取决于您希望如何应用用户输入。