vc中 如何让像计算器一样 点击按钮1 编辑框显示1 点击按钮+ 编辑框接着显示加(1还显示) 点击按钮二
显示2按按钮=计算1+2并输出过设按钮的id分别为ID_1,ID_JIA,ID_2,ID_DENGYU...
显示2 按按钮= 计算 1+2 并输出过 设 按钮的id分别为 ID_1,ID_JIA,ID_2,ID_DENGYU
展开
3个回答
展开全部
如果只是两个数相加 很简单
如果随便写的 比如 1++-2(3(+2=
就要想办法防止误输,另外还要解析公式
在按钮的响应函数里,先读取编辑框的字符串,然后加上本按钮代表的字符,再一起显示到编辑框就可以了
计算可以Find “+”和“=”的位置,然后把“+”前面和后面的数据提取出来,转化成数值型,然后相加,再转成字符串型 ,赋值到编辑框
如果随便写的 比如 1++-2(3(+2=
就要想办法防止误输,另外还要解析公式
在按钮的响应函数里,先读取编辑框的字符串,然后加上本按钮代表的字符,再一起显示到编辑框就可以了
计算可以Find “+”和“=”的位置,然后把“+”前面和后面的数据提取出来,转化成数值型,然后相加,再转成字符串型 ,赋值到编辑框
追问
答非所问 我要代码
追答
void CCalcDlg::OnBnClickedButton1()//1
{
InputStr(_T("1"));
}
void CCalcDlg::OnBnClickedButton2()//2
{
InputStr(_T("2"));
}
void CCalcDlg::OnBnClickedButton3()//+
{
InputStr(_T("+"));
}
void CCalcDlg::InputStr(CString str)
{
CString strOld;
GetDlgItem(IDC_EDIT1)->GetWindowText(strOld);
str=strOld+str;
SetDlgItemText(IDC_EDIT1,str);
}
void CCalcDlg::OnBnClickedButton4()//=
{
CString str,s1,s2,sSum;
GetDlgItem(IDC_EDIT1)->GetWindowText(str);
s1=str.Left(str.Find(_T("+")));
s2=str.Right(str.GetLength()-str.Find(_T("+"))-1);
sSum.Format(_T("%d"),_tstoi(s1)+_tstoi(s2));
InputStr(_T("=")+sSum);
}
展开全部
这是计算器的功能。
追问
我只要 我提问的代码 大神 等着交作业呢!!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2018-09-05
展开全部
沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕沙雕
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询