0

質問の見出し自体は、私の全体的な問題をほぼ説明しています。以下は、私がこれまでに行ったことです。

    // the event is registered as following 
     mouseProc = new CallWndRetProc(MouseProc); // get keys
     MouseProcHandle = SetWindowsHookEx(WH_MOUSE_LL, mouseProc, IntPtr.Zero, 0);

     // The callback method
     public static IntPtr MouseProc(int nCode, int wParam, IntPtr lParam)
    {            
        if (wParam == WM_LBUTTONUP && MouseProcHandle != IntPtr.Zero )                
        {

        }

        if (wParam == WM_MOUSEMOVE)
        {
          // Want to get mouse position here 
        }

        return CallNextHookEx(IntPtr.Zero, nCode, wParam, lParam);
    }

マウスの位置を取得する信頼できる方法はありますか?

コード例をいただければ幸いです ありがとう

4

1 に答える 1

1

codeguru フォーラム、特にpinvoke.netによると、おそらく探しているものです ( pinvoke.net 再び):

[StructLayout(LayoutKind.Sequential)]
 public struct MSLLHOOKSTRUCT
 {
     public POINT pt;
     public int mouseData; // be careful, this must be ints, not uints (was wrong before I changed it...). regards, cmew.
     public int flags;
     public int time;
     public UIntPtr dwExtraInfo;
 }

もちろん、いつでも現在の座標を取得できます。この多くはStackoverflow にあります

于 2015-08-28T06:26:30.713 に答える