VC中的UpdateData()函数参数true/false的区别

VC中UpdateData()函数的使用 
UpdateData(FALSE)与UpdateData(TRUE)是相反的过程     
UpdateData(FALSE)是把程序中改变的值更新到控件中去 
UpdateData(TRUE)是把在控件中输入的值更新到你的变量中去 
TRUE    ===> 控件    -〉数据成员 
FALSE ===>   数据成员 -〉 控件     
比如你的一个编辑框控件c_Edit与变量s_Edit相关联 
在程序中你用了     
s_Edit="CSDN" 
但是你在编辑框中输入"NDSC" 
如果你用的是UpdateData(FALSE)的话你的编辑框内容将是“CSDN” 
如果你用的是UpdateData(TRUE)的话 s_Edit将变成“NDSC” 
如要让m_edit的内容立即生效 
UpdateData(FALSE); 
m_edit.UpdateWindow();//这句不能少,否则不会立即生效 
修正:

如要让m_edit的内容立即生效
UpdateData(FALSE);
UpdateWindow();//这句不能少,否则不会立即生效
EDIT控件没有UpdateWindow这个成员函数,所以直接使用
例如:
m_name="";
m_mima="";
UpdateData(FALSE);
UpdateWindow();

UpdateData(true);//用于将屏幕上控件中的数据交换到变量中。

UpdateData(false);//用于将数据在屏幕中对应控件中显示出来。

      当你使用了ClassWizard建立了控件和变量之间的联系后:当你修改了变量的值,而希望对话框控件更新显示,就应该在修改变量后调用UpdateData(FALSE);如果你希望知道用户在对话框中到底输入了什么,就应该在访问变量前调用UpdateData(TRUE)。

二、关于编辑框的赋值和取值

向编辑框中赋值和取值时:

1、建一个 控制型的变量,如m_edit1,用CWnd的SetWindowText() 和GetWindowText()来赋值和取值。

m_Edit1.SetWindowText("Hello"); 

或者GetDlgItem(IDC_EDIT1)->SetWindowText(str);

2、建立一个控制型的变量,如m_edit1,用SetDlgItemText()和GetDlgItemText()来赋值和取值

CString Str="Hello":

m_edit1.SetDlgItemText(IDC_EDIT1,str);

2、直接建一个 数值形的变量 如m_strEdit;    用 UpdateData()来控制得到变量,还是更新变量。

//取值 
UpdateData(TRUE); 
CString buf = m_Edit1;   
  
//赋值 
m_Edit1="ok!"; 
UpdateData(FALSE);

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值