コード例 #1
0
 private int LLMouseProc(int nCode, IntPtr wParam, IntPtr lParam)
 {
     if (Imports.IsKeyDown(Keys.F12))
     {
         return(MouseHook.CallNextHookEx(this.mousehookId, nCode, wParam, lParam));
     }
     MouseHook.MSLLHOOKSTRUCT mSLLHOOKSTRUCT = (MouseHook.MSLLHOOKSTRUCT)Marshal.PtrToStructure(lParam, typeof(MouseHook.MSLLHOOKSTRUCT));
     try
     {
         if (this.mouseEvent((MouseEventID)((int)wParam), mSLLHOOKSTRUCT.pt.x, mSLLHOOKSTRUCT.pt.y))
         {
             return(1);
         }
     }
     catch (Exception ex)
     {
         Console.WriteLine("Error in mousehook " + ex.Message);
     }
     return(MouseHook.CallNextHookEx(this.mousehookId, nCode, wParam, lParam));
 }
コード例 #2
0
ファイル: MouseHook.cs プロジェクト: benjy3gg/PoeHud
		private static extern int SetWindowsHookEx(int idHook, MouseHook.HookProc lpfn, IntPtr hInstance, int threadId);
コード例 #3
0
ファイル: MouseHook.cs プロジェクト: benjy3gg/PoeHud
		public MouseHook(MouseHook.MouseEvent callback)
		{
			this.mouseEvent = callback;
			this.LLHookProc = new MouseHook.HookProc(this.LLMouseProc);
			this.mousehookId = MouseHook.SetWindowsHookEx(14, this.LLHookProc, IntPtr.Zero, 0);
		}
コード例 #4
0
 public void Dispose()
 {
     MouseHook.UnhookWindowsHookEx(this.mousehookId);
 }
コード例 #5
0
 public MouseHook(MouseHook.MouseEvent callback)
 {
     this.mouseEvent  = callback;
     this.LLHookProc  = new MouseHook.HookProc(this.LLMouseProc);
     this.mousehookId = MouseHook.SetWindowsHookEx(14, this.LLHookProc, IntPtr.Zero, 0);
 }
コード例 #6
0
ファイル: Menu.cs プロジェクト: benjy3gg/PoeHud
 public override void OnEnable()
 {
     this.bounds = new Rect(Settings.PositionWidth, Settings.PositionHeight, Settings.AnchorWidth, Settings.AnchorHeight);
     this.CreateButtons();
     this.hook = new MouseHook(this.OnMouseEvent);
 }