程序运行到MyDlg.DoModal()显示一个对话框,只有当MyDlg关闭后才能执行MyDlg.DoModal()后面的程序,我想显示对话框的同时执行MyDlg.DoModal()后面的程序怎么办呢?例如:我有一段程序
                MyDlg.DoModal();        m_talk.Ini();
我想在MyDlg.DoModal()执行后弹出对话框以后,执行m_talk.Ini(),但是我现在这样做是当执行到MyDlg.DoModal()后,弹出了对话框,只有当关闭了 MyDlg后,才执行下一步m_talk.Ini()。我想:在执行MyDlg.DoModal()弹出对话框以后,在不关闭对话框MyDlg的情况下,去执行下面的程序m_talk.Ini(),那该怎么解决呢???

解决方案 »

  1.   

    用非模态对话框或者用线程执行m_talk.Ini()
      

  2.   

    MyDlg.Create(IDD_DIALOG1);
    m_talk.Init();
      

  3.   

    MyDlg.Create(IDD_DIALOG1);
    m_talk.Init();这个东西是可以执行下面的m_talk.Init(),但是执行到MyDlg.Create(IDD_DIALOG1)时,并没有把对话框MyDlg显示出来,我的要求是要显示出MyDlg对话框出来,在不关闭MyDlg的情况下执行m_talk.Init();
      

  4.   

    CMyDlg pDlg=new CMyDlg;
    pDlg->Create(IDD_DIALOG1,this);
    pDlg->ShowWindow(SW_SHOW);
    m_talk.Init();
      

  5.   

    用非模态对话框才能.CXXdlg *MyDlg;
    MyDlg=new CXXdlg;
    MyDlg->Create(IDD_DIALOG1);//你的对话框的ID
    MyDlg->ShowWindow(SW_SHOW);
    m_talk.Init();
      

  6.   

    CXXdlg *MyDlg;
    MyDlg=new CXXdlg;
    MyDlg->Create(IDD_DIALOG1);
    MyDlg->ShowWindow(SW_SHOW);
    m_talk.Init();