主程序是一个对话框,在执行过程中 主程序弹出一个模式对话框  然后在Show一个非模式对话框
当关闭非模式对话框的时候(HIDE), 我想把焦点还给 弹出的模式对话框,  我该怎么做?CWnd *pTopDlg = GetTopWindow();
pTopDlg->SetActiveWindow();是不可以的

解决方案 »

  1.   

    OnActivate(UINT nState, CWnd* pWndOther, BOOL bMinimized) // WM_ACTIVATE
    {
    CDialog::OnActivate(nState, pWndOther, bMinimized); if(nState == WA_ACTIVE)
    {
        SetFocus();
    }
      
    }
      

  2.   

    CWnd *pTopDlg = GetTopWindow(); //获取的窗体就不是 弹出模式对话框
      

  3.   

    然后在Show一个非模式对话框
    ---------------------------这个非模式对话框的父窗口是不是那个模态对话框?---------------------------
    非模态对话框关闭时你可以发消息给模态对话框