ユーザーが現在アイドル状態かどうかを確認する方法はありますか?
-
09-06-2019 - |
質問
インターネット上には、ユーザーが現在アイドル状態であり、これが次の場合に Windows が NotifyIcon.BalloonTipShown コマンドの動作を変更することを示すドキュメントがいくつかあります。 キーボードとマウスのイベントをチェックすることで検出されました. 。現在、システム トレイでほとんどの時間を費やすアプリケーションに取り組んでいますが、時折複数のバルーン ヒントがポップアップするため、ユーザーが現在システム トレイから離れている場合にバルーン ヒントを見逃さないようにしたいと考えています。システム。現在表示されているバルーンチップは新たに表示すると破棄されるため、ユーザーが離れている場合は表示を控えたいと考えています。
そのため、アプリケーションがシステム トレイに最小化されている場合に、ユーザーが現在アイドル状態であるかどうかを確認する方法はありますか?
解決
Win32はどうですか? LASTINPUTINFO 関数?
using System.Runtime.InteropServices;
[DllImport("User32.dll")]
static extern bool GetLastInputInfo(ref LASTINPUTINFO plii);
struct LASTINPUTINFO
{
public uint cbSize;
public uint dwTime;
}
他のヒント
マネージドコード
マウスの位置を毎秒チェックします。ユーザーに新しいメッセージがある場合は、マウスの動きが検出されるまでメッセージを押し続けてください。
アンマネージコード
ご返答ありがとうございます。私が作業しているアプリケーションに実装するのは非常に簡単なので、最終的に GetLastInputInfo 関数を使用することにしました。
所属していません StackOverflow