我做了一个基于FormView的程序,用到一个对话框,里面有几个编辑框,输入之后传递给FormView,请问怎么传递呢?在DoModal之后直接赋值不管用,传过来的是乱七八糟的东西,要是在对话框里写的话又不知道FormView的对象,请问应该怎么做呢?如果说得不清楚请见谅多谢

解决方案 »

  1.   

    很多方法啊,
    你可以在对话框里定义你的变量,A,B,C~
    按下OK的时候就把编辑框的内容传给A,B,C~那么在DOMOAL之后就能直接使用~又或者把FORMVIEW作为参数传给对话框~
    CDialog A(this);
    A.DoMoal();
    对话框里定义变量mainframe;
    (CFormView*)mainframe = (CFormView*) lparam;
    就能直接使用CFormView的变量.
      

  2.   

    为每个编辑框定义一个控件变量(value型),然后在需要获取数据的时候,首先UpdateData(TRUE),更新一下控件变量的值,然后就可以使用了。UpdateData(FALSE)是用来更新控件显示的值的。看一下下面这段代码吧!
    CString str1,str2;
    CString m_edit1;
    int m_edit2;
    UpdateData(TRUE);
    str1="edit1="+m_edit1;
    str2.Format("edit2=%d",m_edit2);
    AfxMessageBox(str1);
    AfxMessageBox(str2);