DoDataExchange

CWnd::DoDataExchange
virtual void DoDataExchange(
   CDataExchange* pDX
);

永远不会被直接调用。。。它会被UpdataData这个成员函数所调用。。。调用UpateData来初始化对话框(Call UpdateData to initialize a dialog box's controls ),或者从对话框返回数据(retrieve data from a dialog box)。。。
当你从CDialog继承一个类来实现你所需要的Dialog。。。你需要重写这个成员函数。。。因为你要利用框架提供的自动更新和确认。。。The Add Variable wizard will write an overridden version of this member function for you containing the desired "data map" of dialog data exchange (DDX) and validation (DDV) global function calls.

为了自动产生这个重写版本。。。首先要为这个对话框create一个对话框资源。。。然后继承这个对话框。。。然后使用向导来增加成员变量。。。和其应有的取值范围。。。向导就会增加一个重写版本的DoDataExchange,它包含一个data map。如下例:
void CPenWidthsDlg::DoDataExchange(CDataExchange* pDX)
{
   CDialog::DoDataExchange(pDX);
  
      DDX_Text(pDX, IDC_THIN_PEN_WIDTH, m_nThinWidth);
      DDV_MinMaxInt(pDX, m_nThinWidth, 1, 20);
      DDX_Text(pDX, IDC_THICK_PEN_WIDTH, m_nThickWidth);
      DDV_MinMaxInt(pDX, m_nThickWidth, 1, 20);
}
For more information on dialog data exchange and validation, see Displaying and Manipulating Data in a Form and Dialog Data Exchange and Validation. For a description of the DDX_ and DDV_ macros generated by the Add Variable wizard, see Technical Note 26.
 
DoDataExchange函数必须在ddx/ddv宏前面。。。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值