如何在一个弹出的新窗口中访问上级窗口中的变量,函数?
CModifyRow modifyDlg;
modifyDlg.DoModal();
上面是打开一个新窗口
在新窗口中如何能访问到上层窗口也就是类CTestgrid2Dlg中的函数,变量。
我是直接在新窗口中输入
CTestgrid2Dlg gridDlg;
gridDlg.函数名;
不过这样子会出错
不知道要怎么做?

解决方案 »

  1.   

    好好学习吧,半年到一年之后你就可以当真正的程序员了你可以这样:
    CTestgrid2Dlg *pParent = (CTestgrid2Dlg *)GetParent();
    pParent->PublicMethod();
      

  2.   

    传递CTestgrid2Dlg 的指针,或者使用GetParent试试
      

  3.   

    忘了说了,我的意思是想刷新上层窗口中的DataGrid.
      

  4.   

    把上级窗口的指针传给新弹出窗口。
    比如通过CModifyRow的构造函数,或者专门为CModifyRow添加一个SetParenet函数等等。
      

  5.   

    修改CModifyRow的构造函数CModifyRow::CModifyRow(LPVOID pTestgrid2Dlg)
      

  6.   

    GetParent()得到父窗口,然后调用父窗口的函数。不过我建议通过给父窗口发自定义消息(SendMessage),然后在父窗口中响应消息的方法来做更规范些。