DoDataExchange整理

举报
择城终老 发表于 2021/07/26 23:03:46 2021/07/26
【摘要】 CWnd::DoDataExchange virtual void DoDataExchange( CDataExchange* pDX ); 参数: pDX 指向CDataExchange对象的指针。 框架调用这个函数以交换并校验对话框数据。 永远不要直接调用这个函数。它是由UpdateData成员函数所调用的。可调用UpdateData函数以初始化对话...
CWnd::DoDataExchange
virtual void DoDataExchange( CDataExchange* pDX );
参数: pDX 指向CDataExchange对象的指针。

框架调用这个函数以交换并校验对话框数据。
永远不要直接调用这个函数。它是由UpdateData成员函数所调用的。可调用UpdateData函数以初始化对话框控件或从对话框获取数据。
当你从CDialog继承应用程序特有的对话框类时,如果你想要利用框架的自动数据交换和校验功能,你需要重载这个成员函数。ClassWizard将为你编写这个成员函数的重载版本,包含了对话框数据交换(DDX)和校验(DDV)全局函数调用所需的“数据映射”。
要自动生成这个函数的重载版本,首先用对话框编辑器创建一个对话框资源,然后继承一个应用程序特有的对话框类。然后调用ClassWizard并用它来把变量、数据和校验范围与新对话框的不同控件关联起来。ClassWizard将写入重载的DoDataExchange,其中包含了数据映射。

在2003以后的VC环境下,动态生成对话框,相应的代码中没有初始化函数OnInitDialog , 此时,你可以把你的初始化代码直接放在DoDataExchange中。当然,你也可以,手动添加一个初始化函数(无法通过向导与6.0不同!!),但得注意添加后 OnInitDialog 的最开始得调用 CDialog::OnInitDialog();

文章来源: liyuanjinglyj.blog.csdn.net,作者:李元静,版权归原作者所有,如需转载,请联系作者。

原文链接:liyuanjinglyj.blog.csdn.net/article/details/7921938

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。