2008-08-21 65 views
3

互联网上有一些文档显示,如果用户当前处于空闲状态并且这是detected by checking for keyboard and mouse events,Windows将更改NotifyIcon.BalloonTipShown命令的行为。我目前正在研究一个将大部分时间花费在系统托盘上的应用程序,但不时会弹出多个气球提示,并且我想阻止用户错过他们中的任何一个,如果他们目前离开系统。由于任何当前显示的气球提示如果显示新的气球提示都会被破坏,所以如果用户不在,我想延迟显示它们。有没有办法检查用户目前是否空闲?

因此,如果应用程序被最小化到系统托盘中,是否有任何方法检查用户是否当前空闲?

回答

4

如何在Win32 LASTINPUTINFO功能?

using System.Runtime.InteropServices; 

[DllImport("User32.dll")] 
static extern bool GetLastInputInfo(ref LASTINPUTINFO plii); 

struct LASTINPUTINFO 
{ 
    public uint cbSize; 
    public uint dwTime; 
} 
+0

对! 我只是添加链接到LASTINPUTINFO与LayoutKind.Sequential: http://www.pinvoke.net/default.aspx/Structures/LASTINPUTINFO.html – 2009-06-12 20:34:37

0

感谢您的答复,我结束了与GetLastInputInfo功能去,因为它是非常简单的在我工作的应用程序来实现。

相关问题