在MFC编程中,很多控件都需要有对应的变量存放它的值,以此实现在代码中操作变量,来改变对应控件的内容。MFC编程中,通过建立类向导中的操作可以将窗口控件和对应变量绑定,但是代码操作的是变量,用户操作窗口控件如何让他们同步?也就是当用户对控件内容做了改变,怎样让变量作相应的改变或者程序代码中对变量作了改变,如何在控件上表示出来?
UpDateData(Bool true|false)函数正是实现的这个功能。UpdateData函数是Visaul C++中处理 控件变量的关键函数。此函数引起动态数据交换(DDX),根据对话框类中的DoDataExchange()中所定义的类变量和控件的对应关系,交换数据。
UpdateData(true); 把控件内容装入控件变量。即是说:当用户对控件作了操作,控件内容发生了改变,可以通过该函数加true参数实现同步。
UpdateData(false); 用控件变量的值更新控件。即是说:当程序中变量由于执行流程而发生了改变,需要在控件上体现出来,可以用该函数加false参数实现同步。
UpdateData;用来刷新当前对话框
假如你在界面上画了好多控件,并且为这些控件帮定的变量。
例如有一个CEdit控件,并且用类向导帮定了一个变量str_Edit(CString型),
那么你在控件里填入串"TEST",然后你显示这个控件的值(MessageBox(str_Edit);) ;
这时,你什么也看不到。???你在显示(使用变量str_Edit)以前要调用UpdateData(TRUE);
这样,你再次MessageBox(str_Edit),就会看到填入的值TEST。
另外,如果你在程序中想要改变控件里显示的值(str_Edit="TTTTT"),此时你什么也不会看到。???
只有在UpdateData(FALSE); 后才能看到结果。
![]() |
郭晶晶嫁豪门聘礼曝光(图)
刘翔:请大家相信我 我会回来的
李小鹏终身大事自己做主
|
![]() |
体操个人全能王杨威18种金牌拼搏表情 让人叹为观止的奥运观众头顶风光(图) |
![]() |
![]() |
![]() |


档案
日志
相册
视频








评论
想第一时间抢沙发么?