/// <summary> /// Initialize mouse hook and set it's event. /// </summary> private static void InitializeComponents() { _mouseHook = new MouseLLHook(); // Listen to mouse messages _mouseHook.Event += (sender, info) => { var mouseInfo = (MouseLLHookInfo)info; var mouseMsg = mouseInfo.Message; if (mouseMsg == WindowsMessages.MouseMove) { if (_movable) { int difX = mouseInfo.Location.X - _mouseX, difY = mouseInfo.Location.Y - _mouseY; Window.SetWindowPosition(WindowHandle, _windowX + difX, _windowY + difY); } } else if (mouseMsg == (WindowsMessages)Button) { if (GetWindowAndMouseInfos()) { _movable = true; } } else if (mouseMsg == (WindowsMessages)(Button + 1)) { _movable = false; } /*switch (mouseInfo.Message) { case WindowsMessages.MouseMove: if (movable) { int difX = mouseInfo.Location.X - mouseX, difY = mouseInfo.Location.Y - mouseY; Window.SetWindowPosition(WindowHandle, windowX + difX, windowY + difY); } break; case WindowsMessages.LeftButtonDown: if (GetWindowAndMouseInfos()) { movable = true; } break; case WindowsMessages.LeftButtonUp: movable = false; break; default: break; }*/ }; _cursorLoad = new CursorLoad(@"Binary\MoveCursor.cur"); }
/// <summary> /// Stop tracking mouse move and moving window, dispose resources /// </summary> public static void EndMove() { if (_mouseHook != null) { _mouseHook.Dispose(); _mouseHook = null; } if (_cursorLoad != null) { _cursorLoad.Dispose(); _cursorLoad = null; } }
/// <summary> /// Initialize mouse hook and set it's event. /// </summary> private static void InitializeComponent() { _mouseHook = new MouseLLHook(); // Listen to mouse messages _mouseHook.Event += (sender, info) => { var mouseInfo = (MouseLLHookInfo)info; if (mouseInfo.Message == (WindowsMessages)Button) { GetWindowHandle(); } /*switch (mouseInfo.Message) { case WindowsMessages.LeftButtonDown: GetWindowHandle(); break; default: break; }*/ }; _cursorLoad = new CursorLoad(@"Binary\GetCursor.cur"); }