我从CFormView中继承了一个类CInfoFormView,其中引用了一个对话框资源。
该对话框已经是一个类CStepDialog,并封装了属性和方法。我从外部可以得到CInfoFormView的实例,那么我怎么能控制其中对话框资源
内的方法呢。我的方法是把CInfoFormView转换为CStepDialog,可以给其中的整型变量赋值,可为字符串CString型变量赋值时,就提示出错。CStepDialog* pStepDlg=NULL;
CInfoFormView* pInfoView=NULL;
pInfoView=GetInfoView();   //得到指针有效
pStepDlg=(CStepDialog*)pInfoview;pStepDlg.m_no=1;
pStepDlg.m_name=sTemp;   //sTemp为一字符串变量,此处出错!!!
请问,这是怎么回事呢??郁闷中
有无更好的方法?

解决方案 »

  1.   

    faint!不知道你的类的继承关系是怎么样的。如果CInfoFormView继承CStepDialog,把那两个变量设为public的,不就可以直接使用了。如果CStepDialog只是CInfoFormView的一个变量,那你应该知道怎么用了。
      

  2.   

    注意,CFormView是mfc中的一个类,所谓Form,就是以一个对话框资源为模板。此为“引用”的含义。
      

  3.   

    CFormView中的所有控件实际上是对话框资源的控件。
    可查看msdn,CFormView中没有任何可以得到其对话框资源控制的函数我怎么控制这些控件呢。
      

  4.   

    我好象明白了,是不是将对话框类的实现放到CInfoFormView类中呢?
    而原来的对话框仅是个模板而已???