DDX函数,可以使控件跟变量相关联。
介绍一个函数DoDataExchange
virtual void DoDataExchange( CDataExchange* pDX );
这个函数主要是用来被框架调用,用来交换和校验对话框的数据。
我们不会直接调用DoDataExchange这个函数,它是通过UpdateData这个成员函数调用的,我们会调用UpdateData来初始化对话框的控件,或者从对话框获取数据。我们想要数据交换生效,我们必须调用DoDataExchange,这个函数不是我们直接调用的,我们需要调用UpdateData这个函数。
BOOL UpdateData( BOOL bSaveAndValidate = TRUE );
参数为真,数据正被获取,false指示我们的对话框正在被初始化。当模态对话框创建的时候,框架自动调用
UpdateData这个函数,将这个函数设置成了false
例:
UpdateData(true);
m_num3=m_num1+m_num2;
UpdateData(false);
DDV函数,对话框的数据校验。通过这个函数限定我们的取值。
我们可以关联一个控件变量:
ClassWizard->Member Variables选择要关联的控件ID,点击右边的 Add Variable。Category改成Control
完成3个EDIT控件中值2个相加放到第三个中的功能
例:
int num1,num2,num3;