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

转载 2012年02月21日 19:22:05

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);

相关文章推荐

UpdateData(TRUE)和UpdateData(FALSE)

原文地址:http://blog.163.com/sky_sgx/blog/static/1994391942011102983945960/ UpdateData()参数只有一个,默认为TRUE。...

C#调用oracle存储过程

Oracle方面1.创建Oracle过程存储create or replace procedure proce_test(paramin in varchar2,paramout out varcha...
  • lveyo
  • lveyo
  • 2006-09-22 15:26
  • 853

[每日一学]MFC学习笔记——多窗口之间的通信

简单概要 本篇文章依然是关于 消息机制 的文章,在上一章说到了使用线程来和窗口之间进行通信,今天就说一下两个窗口之间进行通信的原理。 预备知识 你得知道什么是 消息机制,或者...

UpdateData(TRUE)和UpdateData(FALSE)的区别

注:本文转载自百度文档----“  http://wenku.baidu.com/view/f2e4b04be45c3b3567ec8b89.html” 当你使用了ClassWizard建立了控...

UpdateData()函数的用法

一个小小的函数给我这个菜鸟带来了很多的麻烦,为了杜绝他的每一次嚣张,我决定来个小小的总结!吃一堑长一智呗! UpdateData(FALSE)与UpdateData(TRUE)是相反的过程 Up...

使用strtok函数解析string类型数据

我们经常要在string字符串数据中提取一些有用的信息。如果字符串信息是以相同的字符分隔开来的话,用strtok是个好方法。 例子如下: #include #include void ma...

Linux 下setitimer函数的使用

在编程的时候,很多时候会用到定时器,定时检测某个状态是否发生变化并进行处理。这时候,就会用到setitimer函数了。 1. 要使用setitimer函数,要包含头文件:#include 2. ...

YUV420、YUV422、RGB24转换

//平面YUV422转平面RGB24 static void YUV422p_to_RGB24(unsigned char *yuv422[3], unsigned char *rgb24, int...

Linux下pppoe设置

在Linux下配置pppoe,一般有以下步骤: 1. 安装pppoe软件。这个不多说,ape-get install pppoe即可。 2. 设置拨号属性: root@ubuntu:~# ppp...

UpdateData(TRUE)和UpdateData(FALSE)的区别

当你使用了ClassWizard建立了控件和变量之间的联系后:当你修改了变量的值,而希望对话框控件更新显示,就应该在修改变量后调用UpdateData(FALSE);如果你希望知道用户在对话框中到底输...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)