首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

类之间 传值有关问题

2012-01-15 
类之间 传值问题对话框A和B想A中的值“HELLO”传给B在B中定义了成员函数B::set(CStringstr){m_txtstr//m_t

类之间 传值问题
对话框   A和B     想A中的值“HELLO”传给B

在B中定义了成员函数
B::set(CString   str)
{
m_txt=str;//m_txt是EDIT控件
UpdateData(true);
}


在主对话框A用以下代码调用
{
CString   str= "hello ";
B   dlg;
dlg.set(str);
dlg.DoModal();
}

结果出现错误   为什么呢?
   


[解决办法]
不能在domodal之前调用set的,因为set用了updatedata函数,而那时控件什么的都还没建好,调用就会出错了.set给一个成员变量赋值吧,对话框显示时再用那个成员变量的值
[解决办法]
B::set(CString str)
{
m_strTxt=str;//m_strTxt是EDIT控件邦定的CString变量

}


BOOL B::OnInitDialog()
{
...
UpdateData(FALSE);
...
}

热点排行