我做了一个窗口,
上面很简单,只有一个EDIT和一个下一步的按扭
EDIT的ID为IDC_TEST对应一个成员变量CString m_test
下一步的功能是点一下会跳出一个新窗口:
void CTestDlg::OnButton1() 
{
CNew news;
news.DoModal();
news.na
}
在新窗口中我加载了原窗口的头文件。
新窗口也很简单,只有一个按扭和一个ID为IDC_SHOW的EDIT
我要它点一下按钮后EDIT中会出现原窗口中EDIT的值。
按钮代码如下:
void CNew::OnButton1() 
{

m_show=m_test;
UpdateData(FALSE);
}
可是不认得m_test.奇怪!
我后来改成:
void CNew::OnButton1() 
{
CTest2Dlg test;
m_show=test.m_test;
UpdateData(FALSE);
}
后新窗口可以出现可是EDIT没有值!!!
我只想实现点下一步后,在跳出的新窗口中显示原窗口EDIT中的值,大家帮帮我吧,我好急呀!

解决方案 »

  1.   

    这是变量的生存域搞错了!m_test有效值只在CTestDlg类中,你可以声明个全局变量,当m_test改变是把值赋给全局变量,在CNew::OnButton1(){...}中引用全局变量
      

  2.   

    我把原窗口的下一步改成这样:
    void CTestxDlg::OnButton1() 
    {
    CString str;
    str="sdfsdf";
    CNew* dlg=new (CNew);
    dlg->m_show=str;
    dlg->DoModal();

    }
    它会在新窗口的EDIT中显示"="sdfsdf"
    而改成:
    void CTestxDlg::OnButton1() 
    {
    CString str;
    str=this->m_test;
    UpdateData(FALSE);
    CNew* dlg=new (CNew);
    dlg->m_show=str;
    dlg->DoModal();

    }
    它还是不会显示原窗口中的m_test的值。
    真不知道这是为什么