博客
关于我
MFC笔记----编辑框加法运算
阅读量:645 次
发布时间:2019-03-15

本文共 1930 字,大约阅读时间需要 6 分钟。

(均为在“OPeration”按钮的函数中写代码)
方法一:利用控件型变量m_editA,m_editB,m_editC
void CMyDlg::OnButtonOperation() //按钮Operation的函数{    // TODO: Add your control notification handler code hereint numA, numB, numC;char chA[10], chB[10], chC[10];m_editA.GetWindowText(chA, 10); //m_editA、m_editB、m_editC为控件型变量m_editB.GetWindowText(chB, 10);numA = atoi(chA);numB = atoi(chB);numC = numA + numB;itoa(numC, chC, 10);m_editC.SetWindowText(chC);}
注:此时框内无数字。
方法二:利用数值型变量m_numA,m_numB,m_numC,用UpdateData直接上传数据
UpdateData(TRUE);m_numC = m_numA + m_numB;UpdateData(FALSE);
注:此时编辑框初始化就含数字0,初始化成了“= 0.0f;”

并且用类向导编辑了float数值型编辑框变量范围0~100.所以当超出范围时会有提示

如上,第三个框超出范围。

同时,不能删除初始化的数字0,不然:

(不过第三个编辑框用于输出结果,删0也没事儿)

方法三:利用GetDlgItem()和GetWindowText()和SetDlgItem()

int numA, numB, numC;	char chA[10], chB[10], chC[10];	GetDlgItem(IDC_EDIT_A)->GetWindowText(chA, 10); //10为长度	GetDlgItem(IDC_EDIT_B)->GetWindowText(chB, 10); //10为长度	numA = atoi(chA);	numB = atoi(chB);	numC = numA + numB;	itoa(numC, chC, 10);//10为十进制	GetDlgItem(IDC_EDIT_C)->SetWindowText(chC);
方法四:(方法三的升华)利用
GetDlgItemText()和SetDlgItemText()

int numA, numB, numC;	char chA[10], chB[10], chC[10];	GetDlgItemText(IDC_EDIT_A, chA, 10);	GetDlgItemText(IDC_EDIT_B, chB, 10);	numA = atoi(chA);	numB = atoi(chB);	numC = numA + numB;	itoa(numC, chC, 10);//10为十进制	SetDlgItemText(IDC_EDIT_C, chC);
方法五:用GetDlgItemInt()和
SetDlgItemInt(),
不用itoa()和atoi()类型
转换

int numA, numB, numC;	numA = GetDlgItemInt(IDC_EDIT_A);	numB = GetDlgItemInt(IDC_EDIT_B);	numC = numA + numB;	SetDlgItemInt(IDC_EDIT_C, numC);
方法六:使用::SendMessage()

int numA, numB, numC;	char chA[10], chB[10], chC[10];	::SendMessage(GetDlgItem(IDC_EDIT_A)->m_hWnd, WM_GETTEXT, 10, (LPARAM)chA);	::SendMessage(GetDlgItem(IDC_EDIT_B)->m_hWnd, WM_GETTEXT, 10, (LPARAM)chB);	numA = atoi(chA);	numB = atoi(chB);	numC = numA + numB;	itoa(numC, chC, 10);//10为十进制	::SendMessage(GetDlgItem(IDC_EDIT_C)->m_hWnd, WM_SETTEXT, 10, (LPARAM)chC);
注:前两个WM_GETTEXT,后一个WM_SETTEXT

你可能感兴趣的文章
NeurIPS(神经信息处理系统大会)-ChatGPT4o作答
查看>>
neuroph轻量级神经网络框架
查看>>
Neutron系列 : Neutron OVS OpenFlow 流表 和 L2 Population(7)
查看>>
new Blob()实现不同类型的文件下载功能
查看>>
New Concept English three (35)
查看>>
NEW DATE()之参数传递
查看>>
New Journey--工作五年所思所感小记
查看>>
new Queue(REGISTER_DELAY_QUEUE, true, false, false, params)
查看>>
New Relic——手机应用app开发达人的福利立即就到啦!
查看>>
new work
查看>>
new 一个button 然后dispose,最后这个button是null吗???
查看>>
NewspaceGPT的故事续写能力太强了
查看>>
NewspaceGPT绘制时序图
查看>>
NewspaceGPT绘制类图
查看>>
new一个对象的过程
查看>>
new和delete用法小结
查看>>
new对象时,JVM内部究竟藏了什么小秘密?
查看>>
new操作符的实现原理
查看>>
Next.js React Server Components 教程
查看>>
NextGen Mirth Connect XStream反序列化远程代码执行漏洞(CVE-2023-43208)
查看>>