3个回答
展开全部
UpdateData()参数只有一个,默认为TRUE。 UpdateData(TRUE) ——刷新控件的值到对应的变量。(外部输入值交给内部变量) 即:控件的值—>变量。 UpdateData(FALSE) —— 拷贝变量值到控件显示。(变量的最终运算结果值交给外部输出显示) 即:变量值—>控件显示。 例如,窗口中用 DDX_Text(pDX, IDC_EDIT1, m_usercode); 将IDC_EDIT1编辑框控件与m_usercode变量做了关联,如果修改m_usercode之后要想对应控件显示更改,则需要调用UpdateData(FALSE);反之在IDC_EDIT1的oneditchanged()中需要加入UpdateData(TRUE); 简单地说,如果Updatedata(TRUE) == 将控件的值赋值给成员变量,即从窗口编辑框中读入数据;Updatedata(FALSE) == 将成员变量的值赋值给控件,将数据从窗口显示。
展开全部
1、比如一个文本编辑框关联了一个Cstring类型的变量m_Text,ID为IDC_TEXT
GetDlgItem(IDC_TEXT)->GetWindowText(m_Text);
MessageBox(m_Text);//测试你刚刚修改的值
UpdateData(FALSE);
调用以上语句即可得到控件里的值。
如果想在另外的地方调用刚刚从控件得到m_Text的值,
需要在代码前加上UpdateData()亦即UpdateData(TRUE);
2、如果没有进行控件的数据关联
假设文本编辑框的ID为IDC_TEXT,定义一个255大小的数组来保存数据,
char Text[255]={0},//定义并初始化
GetDlgItemText(IDC_TEXT,Text);
MessageBox(Text);//测试你刚刚修改的值
如此便可得到控件中的值,此种情况不管获取还是使用数据都不需要调用UpdateData函数。
GetDlgItem(IDC_TEXT)->GetWindowText(m_Text);
MessageBox(m_Text);//测试你刚刚修改的值
UpdateData(FALSE);
调用以上语句即可得到控件里的值。
如果想在另外的地方调用刚刚从控件得到m_Text的值,
需要在代码前加上UpdateData()亦即UpdateData(TRUE);
2、如果没有进行控件的数据关联
假设文本编辑框的ID为IDC_TEXT,定义一个255大小的数组来保存数据,
char Text[255]={0},//定义并初始化
GetDlgItemText(IDC_TEXT,Text);
MessageBox(Text);//测试你刚刚修改的值
如此便可得到控件中的值,此种情况不管获取还是使用数据都不需要调用UpdateData函数。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
UpdateData(true);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询