我在基于单文档框架中创建了3个模式对话框(CDlg1、CDlg2、CDlg3):第一个中的按钮IDOK打开第二个,第二个中的IDOK打开第三个。。 
问题是:
1.现在打开了第三个对话框,该对话框上有一个直接返回第一个对话框的按钮,该如何实现。
2.我想在返回第一个时改变第一个上IDOK按钮的文本,该如何实现??? 这三个都是模式对话框。。 哪位大哥帮我解决下,具体点,我是菜鸟,谢谢。。

解决方案 »

  1.   

    和标题相差大了点吧在工程的任意地方可得到MainFrame指针
    包含mainfrm.hCMainFrame *pMf = (CMainFrame*)(AfxGetApp()->m_pMainWnd);
      

  2.   

    http://topic.csdn.net/t/20021209/14/1243865.html
      

  3.   

    1.现在打开了第三个对话框,该对话框上有一个直接返回第一个对话框的按钮,该如何实现。 
    =============
    #include "Dlg1.h"
    CDlg3::Button1()
    {
    EndDialog(IDCANCEL);
    CDlg1 p;
    p.DoModal();
    }2.我想在返回第一个时改变第一个上IDOK按钮的文本,该如何实现??? 
    ===============
    #include"Dlg2.h"
    CDlg2 *p=(CDlg2 *)GetParent();
    p->GetDlgItem(IDOK)->SetWindowText("你好");
      

  4.   

    你的意思是第三个打开的话,那三个对话框都大开了吧,那只要在关闭第三个的时候也关闭第二个就可以了吧。
    SetWindowText可以改变控件文本