GetDlgItemText函数调用的语句解释

我没学过MFC只学过一些C++所以请各位大神指点迷津!:intGetDlgItemText(intnID,CString&rString)const;intnum1,nu... 我没学过MFC 只学过一些C++所以请各位大神指点迷津!:
int GetDlgItemText( int nID, CString& rString ) const;

int num1,num2,num3; //定义这个,是不是想定义三个变量来获取被转化为整型的,三个控件ID地址的?

CString ch1,ch2,ch3; //这三个char型变量是不是用来获取三个控件ID的?

GetDlgItemText(IDC_EDIT1,ch1); //这句话是不是调用了GetDlgItemText函数来将EDIT1的ID 传给ch1?

GetDlgItemText(IDC_EDIT2,ch2); //这句话同上?

num1=_wtoi(ch1); //用num1来获取,ch1的地址由字符型转化为整型的数据的?

num2=_wtoi(ch2); //同上问

num3=num1+num2; //这个最不能理解,干啥要将俩转化后的数据加在一块啊?

_itow(num3,ch3.GetBuffer(10),10); //这个…………不懂,反正好像也是要转化数据的吧?

SetDlgItemText(IDC_EDIT3,ch3.GetBuffer(10)); //也不明白了……

ch3.ReleaseBuffer(10); //表示不懂…………

顺便说下,我这是为了使MFC中的一个按钮,可以保存俩下拉框内的数据而调用GetDlgItemText函数的,我可以用以上的函数来调用么?
展开
 我来答
jacklh01
2013-03-22 · TA获得超过134个赞
知道答主
回答量:109
采纳率:100%
帮助的人:30.8万
展开全部
详细的GetDlgItemText的用法可以参看MSDN中的介绍。
我这里帮你回答下你的疑问。

你这里的代码是某程序中的片段吧。
根据这些代码段,大概的意思应该是将2个编辑框里输入的数字相加后显示到第3个编辑框里。

int num1,num2,num3; //定义这个,是不是想定义三个变量来获取被转化为整型的,三个控件ID地址的?
答:这三个分别表示1、2、3个编辑框里的值(转换为整形);

CString ch1,ch2,ch3; //这三个char型变量是不是用来获取三个控件ID的?
答:这三个分别也表示1、2、3个编辑框里的值(转换为字符串);

GetDlgItemText(IDC_EDIT1,ch1); //这句话是不是调用了GetDlgItemText函数来将EDIT1的ID 传给ch1?
答:根据第1个编辑框的ID(IDC_EDIT1)来取得里面的值,是字符串型,所以存在ch1里;

GetDlgItemText(IDC_EDIT2,ch2); //这句话同上?
答:根据第2个编辑框的ID(IDC_EDIT2)来取得里面的值,是字符串型,所以存在ch2里;

num1=_wtoi(ch1); //用num1来获取,ch1的地址由字符型转化为整型的数据的?
答:将字符串ch1转成整形数字;

num2=_wtoi(ch2); //同上问
答:将字符串ch2转成整形数字;

num3=num1+num2; //这个最不能理解,干啥要将俩转化后的数据加在一块啊?
答:2个整数相加后结果放到num3

_itow(num3,ch3.GetBuffer(10),10); //这个…………不懂,反正好像也是要转化数据的吧?
答:将整形num3的值转化成字符串ch3,好能在编辑框IDC_EDIT3里去显示

SetDlgItemText(IDC_EDIT3,ch3.GetBuffer(10)); //也不明白了……
答:将ch3显示到编辑框IDC_EDIT3里去

ch3.ReleaseBuffer(10); //表示不懂…………
答:释放ch3所占用的内存空间。
追问
(1)老师,我在num1,num2中要是输入的是整型数字,而不是字符串的话,是不是就要将
CString ch1,ch2,ch3; 这句话改变一下?要改的话咋改?

(2)老师,我想让原先文本中num1,与num2的内容保持不变,将它们不相加,输入到num3里,是不是也可以这样子弄?

(3)老师,我暂时还要调用第三个文本框中的数据,是不是应该把最后一句话删除?
追答
(1)老师,我在num1,num2中要是输入的是整型数字,而不是字符串的话,是不是就要将
CString ch1,ch2,ch3; 这句话改变一下?要改的话咋改?
答:源程序这样写其实它的意思就是num1,num2也是输的整形数字,只是由于和编辑框控件绑定的是字符串类型,所以才定义了字符串类型;

(2)老师,我想让原先文本中num1,与num2的内容保持不变,将它们不相加,输入到num3里,是不是也可以这样子弄?
(3)老师,我暂时还要调用第三个文本框中的数据,是不是应该把最后一句话删除?

答:从你(2)、(3)的问题来说,你就不是要实现它这样的功能,所以不能挪用它这段代码。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式