想用C++的MFC做类似计算器那种输入,需要按了小数点以后可以输入显示小数点后面两位,这种应该怎么做啊。

如题所述

你是要这种效果???

追问

是的~请问怎么做

追答

    把EDIT的内容当作字符串处理, 真正要计算的时候才转化为数字

    定义一个BOOL变量: dot=FALSE; //用来标记是否按了小数点

    按钮0要特别处理

小数点按钮代码如下:

CString str;
m_edit.GetWindowTextW(str);
if(str==_T(""))  //如果什么都还没按,首先按了小数点
{
    ...//报错代码, 也可以自动在小数点前加0, 变成0.
    return ;

if(dot==TRUE)   //如果前面已经按过小数点了
{
    MessageBoxW(_T("小数点重复"));//报错或不反应,直接返回
    return ;
}
//正常情况如下:
str+=_T(".");
dot=TRUE;
m_edit.SetWindowTextW(str);
return ;

温馨提示:内容为网友见解,仅供参考
第1个回答  2016-06-22
首先做界面,然后需要做逻辑,望采纳追问

。。。我问题就是做怎么样的逻辑...

追答

这个小数点按钮,也是你自己做的对吧?那就可以自己写啊,可以私聊

追问

我的问题是想知道...触发后的代码应该写什么....我当然也是知道要做个小数点的按钮,然后按键触发的啊...点这个按钮前,按数字都是显示整数部分..按了以后,就是在小数部分增加,就是和计算器那种

相似回答