主视图与设置对话框控件通讯问题

jiajia1234 2011-08-01 11:00:22
最近做一个小工程,出现了一个不解的问题,如下:

建了一个SDI程序,点击菜单时弹出一个对话框,对话框有几个Edit控件。
我添加了对话框类 CTestDlg,并为每个Edit控件添加了Value变量,每个变量都是CString类型。
在主视图类里,添加菜单的响应:
CTestDlg dlg;
if(IDOK == dlg.DoModal())
{
dlg.UpdateData(true);
CString str;
str =dlg.m_dir.GetString();
str.ReleaseBuffer();
}
这样一直编译不通过,请各位指点迷津~
...全文
40 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
向立天 2011-08-16
  • 打赏
  • 举报
回复
您好
我是本版版主
此帖已多日无人关注
请您及时结帖
如您认为问题没有解决可按无满意结帖处理
另外本版设置了疑难问题汇总帖
并已在版面置顶
相关规定其帖子中有说明
您可以根据规定提交您帖子的链接
如您目前不想结帖只需回帖说明
我们会删除此结帖通知

见此回复三日内无回应
我们将强制结帖
相关规定详见界面界面版关于版主结帖工作的具体办法
jiajia1234 2011-08-01
  • 打赏
  • 举报
回复
还有,我在对话框里把几个Edit控件内容设置Value时为 UINT,可以正确读取,
但是读取CString就会出错
jiajia1234 2011-08-01
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 jiuzhoulh 的回复:]
你在CTestDlg类定义几个变量,当点击OK时存放CTestDlg中的CEdit的值,比如m_str
然后在主视图中使用 CString str = dlg.m_str ;
这样就没有问题了
[/Quote]
我在程序中是这么写的,但是当点击OK时,出现断言错误
Eleven 2011-08-01
  • 打赏
  • 举报
回复
你的DoModal()以后调用UpdateData()应该是错误的吧,DoModal以后窗口就销毁了~
jiuzhoulh 2011-08-01
  • 打赏
  • 举报
回复
你在CTestDlg类定义几个变量,当点击OK时存放CTestDlg中的CEdit的值,比如m_str
然后在主视图中使用 CString str = dlg.m_str ;
这样就没有问题了

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧