如题:在一个主对话框中建立n个非模态的对话框,显示时最后建立的始终在最前面,调用bringtotop也没用

解决方案 »

  1.   

    被激活的对话框肯定在最前面啊,你是不是把所有对话框都设得有WS_EX_TOPMOST属性?
      

  2.   

    我的目的是这样    程序中建立了几个非模态对话框,做不同的提示,选择什么的,比方说5个对话框
        d1,d2,d3,d4,d5,最新显示的对话框要在最上面差异是这样
        1。当前d3,d5在显示
        2. 出现某种情况,要求d2也显示,d2应该在d3,d5上面    现在问题就出现了,有时候后显示的这个d2反倒被d3或d5覆盖了
      

  3.   

    正常的情况应该向 dingshaofengbinbin 说的,但是我的对话框中在弹出是并没有在自动的实时做什么,都是等用户输入,或者显示一些结果的,还是出现了问题。
      

  4.   

    建立一个对话框,创建一个对应该对话框的类在主对话框中 CMyDiaolog dlg;
                 dlg.Create(IDD_DLGID, NULL);
                 dlg.ShowWindow(SW_HIDE);
    需要显示的时候 dlg.ShowWindow(SW_SHOWNORMAL);
      

  5.   


    D3,D5
    SetWindowPos(CWnd::wndNoTopMost, ...)D2
    SetWindowPos(CWnd::wndTopMost, ...)
      

  6.   

    Create(IDD_DIALOG1,GetDesktopWindow())