gpt4 book ai didi

c# - 30 秒无用户交互后引发事件

转载 作者:行者123 更新时间:2023-11-30 13:48:34 27 4
gpt4 key购买 nike

我正在编写一个 WPF 应用程序,如果用户在 30 秒内没有与该程序交互,我想引发一个事件。也就是说,没有键盘或/和鼠标事件。

我想这样做的原因是,如果变量 alertstate 已设置为 true,我想引起屏幕的注意。

我正在考虑使用类似于 BackgroundWorker 的东西,但我真的不知道如何获得用户未与程序交互的时间。有人可以指出我正确的方向吗?

我想这个问题基本上可以归结为检查用户是否与屏幕进行过交互。我该怎么做?

最佳答案

执行此操作的一种方法是使用 GetLastInputInfo。此信息将为您提供自上次用户在鼠标/键盘上进行交互以来耗时(以滴答为单位)。
您可以在这里获得信息: http://www.pinvoke.net/default.aspx/user32.GetLastInputInfo
所以有一个计时器来检查最后一次交互的时间。如果您需要准确性,您可以每 5 秒检查一次,或者当您看到空闲持续 y 秒(y<30)时,您可以设置一个一次性计时器,该计时器将在(30- y) 秒。

关于c# - 30 秒无用户交互后引发事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12213786/

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