遇到这个问题很多次了,如从窗口A发送消息(SendMessage)到窗口B,然后再窗口B中的处理过程中可能会弹出MessageBox,弹出对话框后会出现焦点不在整个应用程序上的情况,只有当切换到其他程序后,焦点才能回到程序,用PostMessage则没问题。 这次出现的是焦点会在A窗口上,但是鼠标单击不能将焦点移动到别的控件上(如ToolBar),只有双击才行。 欢迎大家讨论。

解决方案 »

  1.   

    SendMessage 要等待消息返回
      

  2.   

    我以前做ARX也经常出现这样的情况。
      

  3.   


    是不是未指定父窗口原因?
    就像AfxMessageBox是指定桌面为父窗口的.
      

  4.   

    楼主,弹出messagebox的时候,指定父窗口应该就好而来。int MessageBox(
      HWND hWnd,          // handle to owner window
      LPCTSTR lpText,     // text in message box
      LPCTSTR lpCaption,  // message box title
      UINT uType          // message box style
    );
      

  5.   

    A、B分别是什么样的窗口,两者是什么关系,是否属于同一线程,MessageBox的参数是如何给的?
      

  6.   

    指定了父亲窗口的。 A、B都是派生的ListCtrl控件,MesageBox(strMsg, strTitle, MB_OK |...);没有使用多线程。
      

  7.   

    我想知道弹出box后鼠标如何设置到确定button上