初学者救助,获取编辑控件数据和发送数据到编辑控件
菜鸟救助,获取编辑控件数据和发送数据到编辑控件
初学MFC,有很多不明白。救助各位!
建立了一个基于对话框的MFC程序.
1 在资源里画好了三个编辑控件框(Edit control),分别有X,y和Z,三个都设定为float类型.要获取X和Y里面的数据,因为我要获取的是float类型的数,不是CString类型的,只是想用来做数学运算。获取CString数据可以用GetDlgItemText(),但float类的有没有这样的函数啊?
2 像 1 中所说的函数,由于我初学不知有哪个?若不问人的话,有没有什么方法可以查到呢?
3 要得到的数据 X+Y 在按 确定 按钮后发送到 Z 的编辑控件框中,要怎样做啊?
各位帮下忙啊!初好MFC,好多都不是太明白。现在给分只能给到0~26分,我会在管理里面再加的。
多谢!!!!!
------解决方案--------------------
楼主,你先得到CString之后
调用atof()
就可以转化为一个float型了
------解决方案--------------------
呵呵,
int,float,BYTE,等都是ANSI标准的变量名,直接定义。CString是后来封装的类,与前面的略有不同。
你可以将光标置于变量代码上查询(按F1键)VC变量使用上的详细说明,
用vc class wizard添加3个FLOAT变量(不要选默认的CString)和一个确定按钮的消息处理函数(将X+Y写在里边),详细的你看MSDN吧。
------解决方案--------------------
UpdateData()和UpdateData(false)就好了
------解决方案--------------------
1.打开view-> ClassWizard, 选择Member Variable, 找到控件ID, 然后双击,弹出对话框让你添加变量,选择你想要的float类型,命名一个变量.以后该变量就对应那个控件的内容,用UpdateData(TRUE)可以得到数据的最新内容;给变量赋值然后选择UpdateData(FALSE)可以将你赋值的内容更新到显示区.
------解决方案--------------------
在OnOk的消息处理中添加如下代码,
//
UpdateData(true);//得到X和Y的值
z=x+y;
UpdateData(false);//发送到Z的框中
------解决方案--------------------
UpdateData(true)就是把框里的数据赋值到你定义那个变量上,而UpdateData(false)则是把当前变量的数据显示到对应的编辑控件上,不需要什么函数。
至于具体怎么做,那是由控件内部实现的。
初学MFC,有很多不明白。救助各位!
建立了一个基于对话框的MFC程序.
1 在资源里画好了三个编辑控件框(Edit control),分别有X,y和Z,三个都设定为float类型.要获取X和Y里面的数据,因为我要获取的是float类型的数,不是CString类型的,只是想用来做数学运算。获取CString数据可以用GetDlgItemText(),但float类的有没有这样的函数啊?
2 像 1 中所说的函数,由于我初学不知有哪个?若不问人的话,有没有什么方法可以查到呢?
3 要得到的数据 X+Y 在按 确定 按钮后发送到 Z 的编辑控件框中,要怎样做啊?
各位帮下忙啊!初好MFC,好多都不是太明白。现在给分只能给到0~26分,我会在管理里面再加的。
多谢!!!!!
------解决方案--------------------
楼主,你先得到CString之后
调用atof()
就可以转化为一个float型了
------解决方案--------------------
呵呵,
int,float,BYTE,等都是ANSI标准的变量名,直接定义。CString是后来封装的类,与前面的略有不同。
你可以将光标置于变量代码上查询(按F1键)VC变量使用上的详细说明,
用vc class wizard添加3个FLOAT变量(不要选默认的CString)和一个确定按钮的消息处理函数(将X+Y写在里边),详细的你看MSDN吧。
------解决方案--------------------
UpdateData()和UpdateData(false)就好了
------解决方案--------------------
1.打开view-> ClassWizard, 选择Member Variable, 找到控件ID, 然后双击,弹出对话框让你添加变量,选择你想要的float类型,命名一个变量.以后该变量就对应那个控件的内容,用UpdateData(TRUE)可以得到数据的最新内容;给变量赋值然后选择UpdateData(FALSE)可以将你赋值的内容更新到显示区.
------解决方案--------------------
在OnOk的消息处理中添加如下代码,
//
UpdateData(true);//得到X和Y的值
z=x+y;
UpdateData(false);//发送到Z的框中
------解决方案--------------------
UpdateData(true)就是把框里的数据赋值到你定义那个变量上,而UpdateData(false)则是把当前变量的数据显示到对应的编辑控件上,不需要什么函数。
至于具体怎么做,那是由控件内部实现的。