建议试试使用SetWindowPos排列窗口的Z Order

解决方案 »

  1.   

    我不希望有一个获得焦点再失去焦点的过程,现在查到只要响应wm_mouseactivate就可以实现,但是我不知道怎么处理别的应用程序的这个消息
      

  2.   

    还可以用SetActiveWindow(hWnd)
      

  3.   

    我现在就是在模拟鼠标点击,但模块点击完,那个被点击的窗口就最前化了,我不希望这样,只是点,不希望看到它获得焦点。也不希望用先获得焦点再去掉焦点的方法实现,现在模拟点击是用的::SendMessage(hwnd3, WM_MOUSEMOVE, (WPARAM)MK_LBUTTON, (LPARAM)MAKELONG(nBtnX, nBtnY));
    ::SendMessage(hwnd3, WM_LBUTTONDOWN, (WPARAM)MK_LBUTTON, (LPARAM)MAKELPARAM(nBtnX, nBtnY));
    ::SendMessage(hwnd3, WM_LBUTTONUP, (WPARAM)MK_LBUTTON, (LPARAM)MAKELPARAM(nBtnX, nBtnY));
      

  4.   

    好像应该 使用 mouse_event
      

  5.   

    我现在希望的就是通过全局钩子钩住WM_MOUSEACTIVATE消息,并返回MA_NOACTIVATE,但是WH_MOUSE WH_MOUSE_DLL都钩不住这个消息,WH_CALLWNDPROC这个能钩住,但是无法改掉这个消息。有谁知道的可以告诉兄弟,另加分