掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
マウスイベントを取得するには? (ID:18422)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
Mr.XRAY様 ありがとうございます。 以下のソースでテストしたところマウスが他のアプリのフォームに入った瞬間のイベントは取得できませんでした。 しかしForm1.Edit2.TextにはWIN98の場合は他のアプリに入ったとき変化が現れますが、WINXPですと変化はありませんでした。 function WatchProc(nCode:Integer;wPara:WPARAM;lPara:LPARAM):LRESULT; stdcall; var event: pEVENTMSG; P : TPOINT; Msg_ : Integer; begin if nCode < 0 then begin Result := CallNextHookEx(JournalHook, nCode, wPara, lPara) end else begin Result := 0; Form1.Edit2.Text:= intTostr(lPara); if nCode = HC_ACTION then begin event := pEVENTMSG(lPara); case event^.Message of //WM_SYSKEYDOWN: Msg_ := 1; //WM_KEYDOWN: Msg_ := 2; //WM_SYSKEYUP: Msg_ := 3; //WM_KEYUP: Msg_ := 4; //WM_MOUSEMOVE: Msg_ := 5; WM_MOUSELEAVE: Msg_ := 6; //WM_LBUTTONDOWN: Msg_:= 7; //WM_LBUTTONUP: Msg_:= 8; //WM_RBUTTONDOWN: Msg_ := 9; //WM_RBUTTONUP: Msg_ := 10; else Msg_ := 0; end; if Msg_ = 6 then begin Form1.Edit1.Text:='OK'; end; end; end; end; >メッセージ型(WM_...)に応じたWin32APIのヘルプを参考にして下さい. 勉強します。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.