mfc怎么把编辑框内的输入的数字存入int?如何把数字输出到编辑框内?

如题所述

第1个回答  2022-12-11

两个方法:

第一种【用控件变量,运行快】:给这个Edit添加一个CEdit变量m_edit1。

在你需要这个编辑框的内容的时候,调用CString str=m_edit1.GetWindowText();然后 int h=_tstoi(str);而如果把一个int输出到编辑框,可以这样:int h;//此处为h赋值CString str;str.Format(_T("%d"),h);m_edit1.SetWindowText(str);

第二种【系统自动的,很简单】:给这个Edit添加一个int类型变量 m_edit1;在需要这个数的时候,UpdateData(TRUE);在需要输出到编辑框的时候,UpdateData(FALSE);

UpdateData()是对话框的数据交换函数,括号里填TRUE或不填,都代表从对话框获取,而为FALSE的时候,就是把当前的变量值发送回对话框。每次调用UpdateData()函数,都会针对对话框上所有的值类型变量控件交换数据,比如你有三个EDIT控件,那么调用UpdateData(TRUE)的时候,实际上获取了这三个控件的内容到对应的变量里,所以控件较多的时候,如果你只想获取某一个控件的状态,那么调用UpdateData()很慢。反而用GetWindowText()等函数反而很快。