예제 #1
0
 private void AllowUserToMoveWindowByDragging()
 {
     //Lots of low level windows BS
     MouseHook.HookWindow((WM code) =>
     {
         if (code == WM.MOUSEMOVE || code == WM.NCMOUSEMOVE)
         {
             if (_bMouseDown)
             {
                 System.Drawing.Point curMouse = MouseHook.GetMousePosition();
                 if (_vLastMouse != null)
                 {
                     System.Drawing.Point delta = new System.Drawing.Point(
                         _vLastMouse.Value.X - curMouse.X,
                         _vLastMouse.Value.Y - curMouse.Y);
                     Top  -= delta.Y;
                     Left -= delta.X;
                 }
                 _vLastMouse = new System.Drawing.Point(curMouse.X, curMouse.Y);
             }
         }
     });
 }
예제 #2
0
 private void _MoveWindow_MouseDown(object sender, MouseButtonEventArgs e)
 {
     System.Drawing.Point curMouse = MouseHook.GetMousePosition();
     _vLastMouse = new System.Drawing.Point(curMouse.X, curMouse.Y);
     _bMouseDown = true;
 }