我定义了一个全局变量extern CString str用来传值,但是会报错~!还有其他方法么?
例如:对话框类中有个EDIT控件-->CString m_ID;在控件中输入数据.那怎么样才能在另一个对话框类中得到它的值呢?

解决方案 »

  1.   

    void Czy16Dlg::OnBnClickedButton1()
    {
        SetWindowText("ホメサ盂菎イ」。"); 
    }void Czy16Dlg::OnBnClickedButton2()
    {
        UpdateData(TRUE);if(m_te=="") 
    {
        AfxMessageBox("ミナマ「ソユ」ャヌ・リミツハ菠・。");
    }
    else
    {   //ームm_teフ晴モオスteオトエーフ蠡・
        te.AddString(m_te);
        m_te.Empty();
    }
        UpdateData(FALSE);}
    用按钮控制
      

  2.   

    在第一个对话框中将Edit的值赋给全局变量,然后在第二个对话框中用全局变量的值。
      

  3.   

    CDialog1中:
    CString m_nStr;//与一个EDIT关联
    然后增加一个按钮
    void CDialog1::OnButton1() 
    {
    // TODO: Add your control notification handler code here
    UpdateData(TRUE);//这个很重要!!!!
    CDialog::OnOK();
    }
    然后在Dialog2中设置一个文本框 一个按钮
    CEdit m_Edit;//与文本框关联
    void CTest001Dlg::OnButton1() 
     {
    // TODO: Add your control notification handler code here
    CDialog1 dlg;
    if(dlg.DoModal()==IDOK)
    {
    m_Edit.SetWindowText(dlg.m_nStr);
              }
     
    }
    这样就穿过来了,其他值都大同小异吧!不知道楼主是不是要这样的?
      

  4.   

    遇到过类似的问题,解决----在你的Cxxapp.h中定义变量,在其他类中访问时用函数“AfxGetApp()”获得CxxxApp类的指针,用“AfxGetApp()->成员”访问变量或函数。最后提醒别忘了内存的释放!
      

  5.   

    最简单的是全局变量(注意UpdateData)另外可以用发消息,
    SendMessage如WM_COPYDATA,或自定义消息 并且这可以跨进程...
      

  6.   

    http://blog.csdn.net/lixiaosan/archive/2006/04/11/658248.aspx26.
    27
      

  7.   

    看来这分我是拿不了了,不过还是说说吧,
    A对话框中,Edit中输入数据,然后UpdateData(TRUE);
    全局变量,Extern CString str;
    GetWindowText(&str);
    B对话框中,SetWindowText(str);
    搞定
      

  8.   

    如果第二个对话框是由第一个对话框调用的话,就在第一个对话框中构造第二个对话框,然后将第一个对话框的成员变量CString m_ID赋给相应的成员变量。
      

  9.   

    to syy64(太平洋):
    亏你还三颗星,首先,用全局变量创数据界不对,其他的我就不说了