2008-08-21 5 views
3

ユーザーが現在アイドル状態で、これがdetected by checking for keyboard and mouse eventsの場合、WindowsがNotifyIcon.BalloonTipShownコマンドの動作を変更することを示すインターネット上のドキュメントがあります。私は現在、システムトレイにほとんどの時間を費やしているアプリケーションに取り組んでいますが、時折、複数のバルーンチップをポップアップ表示しています。システム。現在表示されている吹き出しのヒントは、新しい吹き出しのヒントが表示されている場合は破棄されるため、ユーザーがいなくても吹き出しの表示を保留します。ユーザーが現在アイドル状態になっているかどうかを確認する方法はありますか?

このように、アプリケーションがシステムトレイに最小化されている場合、ユーザーが現在アイドル状態であるかどうかを確認する方法はありますか?マウスの

答えて

4

参照してください?応答のための

using System.Runtime.InteropServices; 

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

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

右 LayoutKind.SequentialでLASTINPUTINFOへのリンクを追加するだけです: http://www.pinvoke.net/default.aspx/Structures/LASTINPUTINFO.html –

1

マネージドコード

チェック位置毎秒。ユーザーに新しいメッセージがある場合は、マウスで移動を検出するまで、メッセージを保持します。

アンマネージコード

どのようにWin32のLASTINPUTINFO機能についてDetecting Idle Time with Mouse and Keyboard Hooks

+0

キーボード入力はどうですか? – Garrett

0

おかげで、私は私が働いているアプリケーションに実装するにはかなり簡単ですようGetLastInputInfo機能と一緒に行くことになりました。

関連する問題