如果在一个模式对话框中调用UpdateData,那你就没有正确使用MFC?

wingjer 2003-07-22 11:13:51
今天在一片老外的文章上看到如下一段话:
Note that you should almost never use UpdateData in a dialog. If you use it, you should use it only in a modeless dialog. There is, as far as I can tell, absolutely no excuse for using UpdateData in a modal dialog. A simple rule: If you're calling UpdateData in a modal dialog, you're not using MFC correctly.
(注意,你在对话框中应该尽量不要使用UpdateData函数。如果你要使用它,也最多在非模式对话框中使用,而绝对不要在模式对话框中使用。一个简单原则:如果在一个模式对话框中调用UpdateData,那你就没有正确使用MFC。)

那位仁兄能告诉我为什么。
...全文
62 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
michael_ran 2003-07-22
  • 打赏
  • 举报
回复
简直是搞笑
老外也有犯晕的时候
charles_y 2003-07-22
  • 打赏
  • 举报
回复
晕,偶常用。
能告诉我文章的出处吗?
cjy11 2003-07-22
  • 打赏
  • 举报
回复
在DLG中使用UPDATEDATA,无效,我测试过多次,可以使用INVALIDATE
yy23rock 2003-07-22
  • 打赏
  • 举报
回复
呵呵。。。不用怎么通过DDE取得更新的数据呢?
shen13 2003-07-22
  • 打赏
  • 举报
回复
在模式对话框中,消息都在此模式对话框中不能传递出去,UpdateData函数用了也白用
无怪乎,我的程序中模式对话框中的消息老是传不出去!!!
walkinhill 2003-07-22
  • 打赏
  • 举报
回复
起始我觉得无所谓,当然用控件变量也是好,但是代码量也多,衡量一下再使用就行,我也不觉得用了UpdateData就不是MFC啊
smch 2003-07-22
  • 打赏
  • 举报
回复
得。别管他。继续用。
孤必有邻 2003-07-22
  • 打赏
  • 举报
回复
不理解原文中为什么这么说。
但我确实不大用UpdateData(其实已经我从一开始就不用它),因为我不喜欢通过ClassWizard添加那么多变量,我喜欢直接调用函数,读取或设置界面信息,如GetDlgItemText()/SetDlgItemText()。
huazaimh 2003-07-22
  • 打赏
  • 举报
回复
这个观点呢,我不置可否,好像有点道理
因为我实在是用过,好像也是在非模式下面用的,好像是一个打印的Dlg
这个Dlg是经过改写的系统的PrintDlg,呵呵!
bugbugbug 2003-07-22
  • 打赏
  • 举报
回复
原文出自:http://www.codeproject.com/cpp/avoidupdatedata.asp#xx24797xx

我感觉文章的论点根本就无法说明不能使用UpdateData
1. 不使用UpdateData就没有使用ms的很有用的dde
2. 该文中列举的问题都可以用其他简单的方法解决。
passren 2003-07-22
  • 打赏
  • 举报
回复
用了很久了啊,不懂了!
半宫佳丽 2003-07-22
  • 打赏
  • 举报
回复
本来以为我明白了,现在发现,晕了!!!很厉害

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

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