CxxxDlg类里有个公有变量m已被CxxxDlg::OnInitDialog()初始化赋值。我现在想在CxxxView类里,对m进行操作或赋值。应该怎么做?如果用一个CxxxDlg里的函数实现的话,在CxxxView里可以这样调用吗?CxxxView::function()?

解决方案 »

  1.   

    可以先将CxxxDlg的指针保存下来,然后再在CxxxView中调用指针所指向的function()就可以了。。
      

  2.   

    如果你的Dlg是在View类中建立的就简单了,如果不是,你可以将Dlg的指针保存下来,你无非是在CMainFrme或者C**APP类中建立的,使用AfxGetMainWnd和AfxGetApp函数获得这两个类的指针,然后就可以获得保存在这两个类中的Dlg指针,如为pDlg,pDlg->function().
      

  3.   

    在View中声名Dlg类的指针,然后访问。
      

  4.   

    思想:用指针实现
    第一步:在CxxxView类中申明一个CxxxDlg指针m_pframe;
    第二步:在CxxxDlg 谈出的时候通过 m_pframe = this;
    第三步:在CxxxView::function()中通过m_pframe->m进行访问。
    注意:第二步一定要有否责你所定义的指针就是非法野指针,特定会出错