UpdateData(TRUE or FALSE) 是MFC对话框程序中刷新窗口控件数值的。
UpdateData(TRUE) represents (代表)将对话框中控件的值传递给控件关联的变量;UpdateData(FALSE) represents (代表)将对话框中控件关联的变量的值赋给控件,显示在界面上。
关于UpdateData()的函数详细的使用介绍可参看(https://baike.baidu.com/item/UpdateData/8675667?fr=aladdin点击打开链接)
窗口函数UpdateData()的实用:
在使用MFC的对话框编程中,新手可能会碰到:在往界面的编辑框中输入数据的时候,发现一输入数据瞬间就没有了,数据无法在控件中保存,然后就会疑惑不解,那么这就是UpdateData(FALSE)在作怪了。检查你的Code里面是不是一直在使用UpdateData(FALSE)来刷新数据,定位到刷新数据的代码段,在代码段的变量赋值的前面加上UpdateData(TRUE)。然后,再运行一下你的Code,看看是不是解决问题了呢
。如果发现出现奇迹了,想一想是为什么呢?
原理解析:使用UpdateData(FALSE)来刷新数据,是把变量的值赋给控件,显示到界面上。当你在界面上向控件输入数据时,没有把输入的数据及时的传递给变量,也就是变量的值没有发生变化,还是你输入之前保存的数据。你还没有输完,就遇到UpdateData(FALSE)来刷数据,就又把原来的值重新刷到界面上,就是你看的现象了哦。在使用UpdateData(FALSE)之前,记得在变量的赋值前边,最好在码Code的程序段的起始位置加上UpdateData(TRUE),就没有后顾之忧了。Bingo.