MFC计算器 两个问题
c++吧
全部回复
仅看楼主
level 4
xxxshu01 楼主
我为什么得出来的后面有.00000
例如:1+2=3 显示为3.00000
还有退格键
void C计算器Dlg::OnBnClickedButton21()//退格
{
// TODO: 在此添加控件通知处理程序代码
CString str;
m_edit.GetWindowTextW(str);
if (str == _T(""))
{
return;
}
if (str.GetLength() == 1)
{
str = _T("");
}
else
{
str = str.Left(str.GetLength() - 1);
}
m_edit.SetWindowTextW(str);
}
void C计算器Dlg::OnBnClickedButton19()//等于/结果
{
// TODO: 在此添加控件通知处理程序代码
if(n == 0)
{
data += _wtof(m_result);
m_result.Format(_T("%lf"),data);//
UpdateData(FALSE);
}
if (n == 1)
{
data -= _wtof(m_result);
m_result.Format(_T("%lf"), data);//
UpdateData(FALSE);
}
if (n == 2)
{
data *= _wtof(m_result);
m_result.Format(_T("%lf"), data);//
UpdateData(FALSE);
}
if (n == 3)
{
data /= _wtof(m_result);
m_result.Format(_T("%lf"), data);//
UpdateData(FALSE);
}
}
这是按钮的代码
void C计算器Dlg::OnBnClickedButton12()//数字按钮1
{
// TODO: 在此添加控件通知处理程序代码
m_result +=_T("1");//unicode编码需要_T()对字符串进行操作
UpdateData(FALSE);
}
void C计算器Dlg::OnBnClickedButton5()//加法
{
// TODO: 在此添加控件通知处理程序代码
n = 0;//n =0是处理加法操作,为下面处理做准备
data = _wtof(m_result);
m_result = _T("");
我要怎么改
2015年09月26日 08点09分 1
level 13
%lf
2015年09月27日 00点09分 2
level 14
自己做判断去掉多余的0
2015年09月27日 01点09分 3
1