请教一个MFC的问题
在主窗口中通过一个button弹出另外一个窗口的同时,主窗口关闭,而弹出的窗口还在。
这个过程如何实现?

解决方案 »

  1.   

    我原来的想法是在弹出第二个窗口时,把第二个窗口设置为主窗口再对原来的窗口进行销毁。不过在实现过程一直产生错误。
    其实在主窗口的button事件中,调用CDialog::OnOK()就可以了 
    “OnOK()实现可能已经打开的非模态对话框的数据交换。”这句是查阅的资料,个人还得继续理解下。
    5楼想法是很不错!
      

  2.   

    假设主对话框类为CDlgA,被调用对话框类为CDlgB 
    主对话框 有个按钮 可以调用一个对话框 同时关闭主对话框 
    ===================================
    #include "DlgB.h" 
    void CDlgA::OnButton1() 

      CDlgB p; 
      EndDialog(IDCANCEL); 
      p.DoModal(); 
    } 在调用的对话框上有一个 按钮(返回)  调用主对话框 同时关闭当前对话框 
    ================================= 
    #include "DlgA.h" 
    void CDlgB::OnButton1() 

      CDlgA p; 
      EndDialog(IDCANCEL);   
      p.DoModal();  

      

  3.   

    有写病毒根本就没有窗口,但是病毒照样可以运行!所以有些人说主窗口关闭了程序就结束了肯定是不对的。我想应该有hide的思路。
    虽然我没有提出具体实现,但是也是澄清了一个思路。希望楼主赐分。
      

  4.   

    有写病毒根本就没有窗口,但是病毒照样可以运行! 所以有些人说主窗口关闭了程序就结束了肯定是不对的。我想应该有hide的思路。 
    虽然我没有提出具体实现,但是也是澄清了一个思路。希望楼主赐分。
    =====================
    一般情况下,一个程序的主窗口关闭了,进程也就关闭了,如果主窗口关闭了,进程还在的话,这个进程就没办法和用户交互了,还有意义吗?不是说不能实现,而是说,正常情况下是这样。至于楼主的问题,设一下主窗口的属性为隐藏就行了。