社区
界面
帖子详情
有关UpdateData函数的疑问!
zshtiger2414
2008-07-10 04:12:02
我原来是想用这个函数把我在编辑框中设置的字符显示出来,但是在这个函数实行的时候画面上的值都恢复为最初的值了!这是怎么回事!
...全文
180
16
打赏
收藏
有关UpdateData函数的疑问!
我原来是想用这个函数把我在编辑框中设置的字符显示出来,但是在这个函数实行的时候画面上的值都恢复为最初的值了!这是怎么回事!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
16 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
destinycncn
2008-07-12
打赏
举报
回复
lz分给的很均匀啊 呵呵~!加油学习!
zshtiger2414
2008-07-11
打赏
举报
回复
谢谢大家了!
我发现在其它的控件被点击过之后,没有及时的调用updatedata(ture)这个函数,也就是没有把这些值反映到控件对应的变量中去!~
这个时候要是再调用函数,updatedata(false),那么就会使得他们返回到初始值!
呵呵!
谢谢大家了阿!
M_S_D_N
2008-07-11
打赏
举报
回复
对于控件的变量,一般来说有两种形式,一种是控件变量,一种是值变量,控件变量的赋值是直接对控件操作的,而值变量是通过DDX间接对控件操作的,这个时候就要频繁牵涉到
BOOL UpdateData( BOOL bSaveAndValidate = TRUE );
这个函数,而这个函数的功能是双重的,由参数bSaveAndValidate决定。
举个例子:编辑框控件IDC_EDIT的值变量为m_nEdit,窗口初始化后IDC_EDIT中没有任何数字,m_nEdit=0,突然某个时刻,程序对m_nEdit进行赋值:
m_nEdit=3;
如果赋值之后调用
UpdateData(FALSE);
则控件IDC_EDIT会被赋上m_nEdit的值,出现字符串"3",反之,如果调用
UpdateData(TRUE);
则控件IDC_EIDT中的字符串不会改变,而m_nEdit会被赋为IDC_EDIT中的值。
对于楼主的问题:
在button处理中我用了updatedata(true)和updatedata(false)这两个函数
但是这个时候,在画面上的所有的radio的值都返回到初始值了
很有可能在这两个语句之间对值变量进行了赋值,所以在UpdateData(FALSE)后改变了控件的状态。
destinycncn
2008-07-10
打赏
举报
回复
不论什么类型的变量,能初始化尽量初始化!
go_go_vip
2008-07-10
打赏
举报
回复
[Quote=引用 11 楼 shengliz 的回复:]
你如果要设置radio按钮的话 ,不要用什么UPDATEDATA()了,不是有个函数的嘛,
好像是CheckRadioButton(firstID,LastID,要设置的ID),当然这几个要成组的;
用文本框的话,直接用UpdateData(false)就可以了,把变量的值传给控件显示,
如果还要用到控件的值的话,用UpdateData()就可以了,
我怀疑你是不是程序中间搞错了,可不要把=喝==混淆起来哦,我以前犯过这样的低级错误,
[/Quote]
支持
羽毛乱发
2008-07-10
打赏
举报
回复
你如果要设置radio按钮的话 ,不要用什么UPDATEDATA()了,不是有个函数的嘛,
好像是CheckRadioButton(firstID,LastID,要设置的ID),当然这几个要成组的;
用文本框的话,直接用UpdateData(false)就可以了,把变量的值传给控件显示,
如果还要用到控件的值的话,用UpdateData()就可以了,
我怀疑你是不是程序中间搞错了,可不要把=喝==混淆起来哦,我以前犯过这样的低级错误,
KK32073307
2008-07-10
打赏
举报
回复
说的再清楚一点,你是在编辑框里设置值然后在哪儿显示啊?
fqli1610
2008-07-10
打赏
举报
回复
同时调用updatedata(true)和updatedata(false)这两个函数
?
调用一个试试看
zshtiger2414
2008-07-10
打赏
举报
回复
[Quote=引用 7 楼 linglongyouzhi 的回复:]
你没有给他们赋值
引用 6 楼 zshtiger2414 的回复:
大家说得我都试验过了,还是不行!
在画面上有几个radio,还有几个button和edit
在button处理中我用了updatedata(true)和updatedata(false)这两个函数
但是这个时候,在画面上的所有的radio的值都返回到初始值了,这是怎么回事阿?
[/Quote]
恩
我给edit框子赋值了!
linglongyouzhi
2008-07-10
打赏
举报
回复
你没有给他们赋值
[Quote=引用 6 楼 zshtiger2414 的回复:]
大家说得我都试验过了,还是不行!
在画面上有几个radio,还有几个button和edit
在button处理中我用了updatedata(true)和updatedata(false)这两个函数
但是这个时候,在画面上的所有的radio的值都返回到初始值了,这是怎么回事阿?
[/Quote]
zshtiger2414
2008-07-10
打赏
举报
回复
大家说得我都试验过了,还是不行!
在画面上有几个radio,还有几个button和edit
在button处理中我用了updatedata(true)和updatedata(false)这两个函数
但是这个时候,在画面上的所有的radio的值都返回到初始值了,这是怎么回事阿?
qt_freelancer
2008-07-10
打赏
举报
回复
[Quote=引用 2 楼 sevendog 的回复:]
UpdateData(TRUE); //刷新变量
[/Quote]
UpdateData(FALSE); //刷新界面
hua_yang
2008-07-10
打赏
举报
回复
变量-->显示:UpdateData(false);
显示-->变量:UpdateData(true);
sevendog
2008-07-10
打赏
举报
回复
先把变量刷新了就可以了
sevendog
2008-07-10
打赏
举报
回复
UpdateData(TRUE); //刷新变量
linglongyouzhi
2008-07-10
打赏
举报
回复
需要参数的,TRUE OR FALSE,函数的行为是不同的,建议遇到问题时先查msdn
小叙MFC的
Update
Data
困惑曾经对
Update
Data
()的参数是传入TRUE还是传入FALSE迷惑过,每次调用的时候就会去MSDN一遍。现在就彻底解惑一下。规则规则在使用ClassWizard建立了控件和变量之间的映射关系之后: 变量的值变化了,需要更新到UI...
在MFC中,通过edit control控件实时显示
函数
的执行进度
最近在做一个单机版的MFC程序,程序的功能是点击按钮,程序执行运算
函数
,整个运算过程时间较长,(涉及图片预处理、相位解包裹、点云处理、曲面重建等过程),我需要在edit control控件实时显示
函数
的执行进度。...
关于mfc常用系统
函数
的使用及说明
这个菜单用普通的方法是不能编辑与改变的,但是我们可以通过api
函数
getsystemmenu来得到它的句柄,然后通过菜单相关的api
函数
就能改变它了。 12.SetDlgItemText BOOLSetDlgltemText(HWND hDlg,int nlDDlgltem,LPCTSTR...
关于窗口重绘的初级问题&由
Update
Data
(FALSE)想到的窗口刷新问题
自己到网上搜索或者看相关资料。我这里给出一个特殊的解释:以最小化后还原为例,假设只有一个程序在运行,窗口最小化时显示计算机桌面,并不妨假设桌面是蓝色的背景,当窗口还原时,窗口所占的这一块区域该显示些...
React教程: 第7天 生命周期钩子
函数
今天,我们将看看我们可以用于React组件的一些最常见的生命周期钩子
函数
,我们将讨论为什么它们是有用的,什么时间应该用什么.
界面
15,979
社区成员
115,897
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章