程序正在运行期间,弹出的messagebox,为什么总在主窗口的后面,怎么才能让messagebox在主窗口的最前面。谢谢大家了。!!!!!

解决方案 »

  1.   

    MessageBox的第一个参数设置为主窗口的句柄
      

  2.   

    MFC 里 MessageBox(); 默认应该就是在你调用的窗口前如果不行,用这个::MessageBox(主窗口的HWND,......)
      

  3.   

    MFC 是AfxMessageBox 这个肯定是最前面
    int AfxMessageBox(
       LPCTSTR lpszText,
       UINT nType = MB_OK,
       UINT nIDHelp = 0 
    );
    int AFXAPI AfxMessageBox(
       UINT nIDPrompt,
       UINT nType = MB_OK,
       UINT nIDHelp = (UINT
    ) -1 
    );
      

  4.   

    MFC 里也有MessageBox的当你在主窗口里写MessageBox的时候调用的其实是这个CWnd::MessageBox()
      

  5.   

    呵呵这个我知道啊,但如果不是主窗口的class那么这个MessageBox就不是主窗口的了
    可能就不在最面了
      

  6.   

    MB_TOPMOST
    The message box is created with the WS_EX_TOPMOST window style.MessageBox的最后一个参数加上这个
      

  7.   

    我最喜欢简单了,所以只用AfxMessageBox