自作のプログラムのフォーム外も含めて画面上のどこにおいてでもマウスを動か
した時・マウスをクリックした時・キーボードを触った時にイベントを起こし
たいと思っています。しかし、VBの標準のイベントでは、フォーム外もだめ
だし、VisibleをFalseにしておいてもだめのようです。どなたかいい
方法知っていませんか?またWindows側からAPIかなんかでユーザー
が最後に操作した時間とかって得られませんか?
あほな質問かもしれませんがよろしくおねがいします。(サイトとかでも大歓迎)
> 自作のプログラムのフォーム外も含めて画面上のどこにおいてでもマウスを動か
した時・マウスをクリックした時・キーボードを触った時にイベントを起こし
たいと思っています。
グローバルフックをしないとだめですね、
(フックについてはこの掲示板でも何度か出ているので、検索してください)
グローバルフックをすれば、どのソフトの動作であろうと、
(ウィンドウメッセージを送出・受け取りしていれば)受け取ることができるはずです。
DLLを作らないといけないので、VBのみでは作れませんし、いざというときの動作も、VBではできるかどうか不安ですから、
あまりVBではお勧めしません…。
> またWindows側からAPIかなんかでユーザー
が最後に操作した時間とかって得られませんか?
Windows2000以降でなら、できるような話を聞いたような気がします。
(かなり前にきいたような"気がする"だけなので、とてもあいまいですけど)
でも、上のグローバルフックができていれば、それを利用したほうが早いような気がしないでもないですね。
ツイート | ![]() |