MFC中怎样读取文本框的内容?(有分追加)

我有一个文本框,是用来请用户输入数值的,ID为IDC_EDIT2,用str_scale表示这个文本框的内容,定义如下:h文件:public:CStringstr_scal... 我有一个文本框,是用来请用户输入数值的,ID为IDC_EDIT2,用str_scale表示这个文本框的内容,定义如下:
h文件:
public:
CString str_scale;
cpp文件:
DDX_Text(pDX, IDC_EDIT2, str_scale);
我定义了一个变量scale用来将这个文本框的内容读出来并转化为单精度,进行运算。可是从运行程序来看好像没有读出这个文本框的内容。这个函数体的结构如下:
CMyDBADODlg MyDlg;
float scale=atof(MyDlg.str_scale)
程序运算

我试着在float scale=atof(MyDlg.str_scale)前加入了UpdateData()来更新数据。但报错,说是没有定义的标识符。我把UpdateData()放在按钮的click事件函数中的开头就不报错了,但还是没有读出文本框的内容。请问我应该怎么改正?
展开
 我来答
troy0215
2009-05-20 · TA获得超过231个赞
知道小有建树答主
回答量:310
采纳率:0%
帮助的人:304万
展开全部
从编辑框输入数据后,需要调用UpdateData(TURE);进行数据交换,
这样用GetDlgItem()就可以获取内容了

如果要写入数据,先SetDlgItem(),之后再调用UpdateData(FLASE);进行数据交换这样才回把数据写入到编辑框

UpdateData();是对话框的更新函数
TURE的时候读取数据,FLASE的时候写入数据
编辑框内容改变后,程序和这个编辑框对应的变量并不改变,直到用UpdateData(TURE);。同样,变量改变后,编辑框也不会反应出来,直到调用UpdateData(FLASE);

抄别人的,嘿嘿~
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式