VC编辑框

voidCMyDlg::OnChangeZ1(){UpdateData(TRUE);intx[]={17,18,19,20,21,22,23,24,25,26,27,28... void CMyDlg::OnChangeZ1() { UpdateData(TRUE); int x[]={17,18,19,20,21,22,23,24,25,26,27,28,29,30,35,40,45,50,60,70,80,90,100,150,200}; double y[]={2.97,2.91,2.85,2.8,2.76,2.72,2.69,2.65,2.62,2.6,2.57,2.55,2.53,2.52,2.45,2.4,2.35,2.32,2.28,2.24,2.22,2.2,2.18,2.14,2.12}; for(int i=0;i<25;i++) { if(m_Z1<x[i]) break; else if(x[i]==m_Z1) m_YFa=y[i]; else if(x[i]<m_Z1&&m_Z1<x[i+1]) m_YFa=y[i-1]+(y[i]-y[i-1])/(x[i]-x[i-1])*(m_Z1-x[i-1]); } UpdateData(FALSE);}

为什么我还没输数据,编辑框中就显示0,然后我输12,但是编辑框中0还在,而且12是反过来输进去的,就是变成21了,新手不知道怎么改了
展开
 我来答
veket的小号
2014-02-28 · TA获得超过3371个赞
知道大有可为答主
回答量:3762
采纳率:0%
帮助的人:4000万
展开全部
建议你不要在onchange中使用updatedata 而应该考虑 GetDlgItemText得到字符串 然后在想办法把字符串转为 整型、浮点型的数值
或者 把 这段写到按钮点击中去
比如你输入12
当你输入1的时候 onchange被触发 执行updatedata 控件值 刷进关联的变量 updatedata false 变量值刷回控件显示
你输入2的是 第二触发 onchange 这个时候也许第一个onchange还没执行完......然后
输入导致改变 改变导致update update又导致改变 来回变 很可能死掉 或者 反应为 输入与显示 错乱
任明星Ming
2014-02-28 · TA获得超过798个赞
知道小有建树答主
回答量:1061
采纳率:100%
帮助的人:1152万
展开全部

这里有个编辑框的例子,当点击按钮时,不断改变编辑框中的数字。给你做个参考。


已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式