DOBON.NET DOBON.NETプログラミング掲示板過去ログ

キー入力イベント取得について

環境/言語:[WinXP VB.NET .NET Framework 1.1]
分類:[.NET]

初めて投稿させていただきます。
はんべえと申します。

あるシステム開発での要望で、ある画面が
「一定時間マウスおよびキーボード操作がなければ、画面をユーザー認証画面に切り替える」
という機能があり、タイマーを用いて実現する方向でいますが、
大変なのはマウスおよびキーボード操作があった場合、切替時間をリセットするという処理で、
画面がActive状態のときはもちろんKeyPressやMouseMoveイベントを拾えばいいだけのことなんですが、要望は「非Active状態でもマウス/キーボード操作があれば切替時間をリセットする」という機能の実現です。

つまりExcelなどの他アプリがActive状態のときでも、キー入力イベントを拾えということです。

要約すると、
「フォームが非Active状態でもキー入力イベントは拾えるか」
です。

マウス操作の感知については、タイマーで前回のマウスポインタの座標を記憶しておき、前回の座標と今回の座標を比較して、異なれば「移動した」とみなす方法でとりあえず解決していますが、キー入力イベントとなるとそうもいきません。

お分かりになられる方がいらっしゃったら、ご教授願いたいと思います。
よろしくお願いいたします。
すみません、過去ログにおなじものがありました。
参考にさせていただきます。

また、
http://www.itmedia.co.jp/enterprise/articles/0412/07/news034_4.html
にキー検出のコード例が載っていました。

ありがとうございました。

DOBON.NET | プログラミング道 | プログラミング掲示板