Exemplo n.º 1
0
 protected void WinEventCallback(IntPtr hWinEventHook,
                                 Hook.SWEH_Events eventType,
                                 IntPtr hWnd,
                                 Hook.SWEH_ObjectId idObject,
                                 long idChild,
                                 uint dwEventThread,
                                 uint dwmsEventTime)
 {
     if (hWnd == NotepadhWnd &&
         eventType == Hook.SWEH_Events.EVENT_OBJECT_LOCATIONCHANGE &&
         idObject == (Hook.SWEH_ObjectId)Hook.SWEH_CHILDID_SELF)
     {
         WinApi.RECT rect = Hook.GetWindowRect(hWnd);
         this.Location = new Point(rect.Right, rect.Top);
     }
 }
Exemplo n.º 2
0
 protected void WinEventCallback(IntPtr hWinEventHook,
                                 Hook.SWEH_Events eventType,
                                 IntPtr hWnd,
                                 Hook.SWEH_ObjectId idObject,
                                 long idChild,
                                 uint dwEventThread,
                                 uint dwmsEventTime)
 {
     // 仅游戏窗口获取焦点时会调用
     //if (hWnd == GameInfo.Instance.hWnd &&
     //    eventType == Hook.SWEH_Events.EVENT_OBJECT_FOCUS)
     //{
     //    log.Info("Game window get foucus");
     //}
     // 更新窗口信息
     if (hWnd == gameHWnd &&
         eventType == Hook.SWEH_Events.EVENT_OBJECT_LOCATIONCHANGE &&
         idObject == (Hook.SWEH_ObjectId)Hook.SWEH_CHILDID_SELF)
     {
         SetLocation();
     }
 }
 protected void WinEventCallback(IntPtr hWinEventHook, Hook.SWEH_Events eventType, IntPtr hWnd, Hook.SWEH_ObjectId idObject, long idChild, uint dwEventThread, uint dwmsEventTime)
 {
     if (hWnd == poeHandle && eventType == Hook.SWEH_Events.EVENT_OBJECT_LOCATIONCHANGE && idObject == (Hook.SWEH_ObjectId)Hook.SWEH_CHILDID_SELF)
     {
         // Occurs when POE window is moved or size changed
         CheckAndUpdate();
         UpdateLocationAndSize();
     }
 }
 protected void WinEventCallback(IntPtr hWinEventHook, Hook.SWEH_Events eventType, IntPtr hWnd, Hook.SWEH_ObjectId idObject, long idChild, uint dwEventThread, uint dwmsEventTime)
 {
     if (hWnd == poeHandle && eventType == Hook.SWEH_Events.EVENT_OBJECT_LOCATIONCHANGE && idObject == (Hook.SWEH_ObjectId)Hook.SWEH_CHILDID_SELF)
     {
         UpdateLocation();
     }
 }
Exemplo n.º 5
0
 // Event callback to detect when any window has been been the new foreground
 protected void WinEventForegroundCallback(IntPtr hWinEventHook, Hook.SWEH_Events eventType, IntPtr hWnd, Hook.SWEH_ObjectId idObject, long idChild, uint dwEventThread, uint dwmsEventTime)
 {
     if (hWnd == _targetHWnd && eventType == Hook.SWEH_Events.EVENT_SYSTEM_FOREGROUND)
     {
         this.Visible = true;
     }
     else
     {
         this.Visible = false;
     }
 }
Exemplo n.º 6
0
 // Event callback to detect when the target window has moved
 protected void WinEventMoveCallback(IntPtr hWinEventHook, Hook.SWEH_Events eventType, IntPtr hWnd, Hook.SWEH_ObjectId idObject, long idChild, uint dwEventThread, uint dwmsEventTime)
 {
     if (hWnd == _targetHWnd && eventType == Hook.SWEH_Events.EVENT_OBJECT_LOCATIONCHANGE && idObject == (Hook.SWEH_ObjectId)Hook.SWEH_CHILDID_SELF)
     {
         _rect         = Hook.GetWindowRect(_targetHWnd);
         this.Size     = new Size(_rect.Right - _rect.Left, _rect.Bottom - _rect.Top);
         this.Location = new Point(_rect.Left, _rect.Top);
     }
 }