当前位置 博文首页 > 编程老师【学python加V:web7599】:MFC实现一个简单的计算器,

    编程老师【学python加V:web7599】:MFC实现一个简单的计算器,

    作者:[db:作者] 时间:2021-08-08 10:05

    用MFC写了一个简单的计算器,界面做的也比较简单,如下图1,可以进行简单的加、减、乘和除功能,小数点显示这块做的不是很好,比如输入1.2,不会一个个的显示,而是先显示“1”,后同时显示“.2”,还有就是遇到0.00时,显示的也不够人性化,哎,就这样吧。。。

    界面

    ?

    1、建立工程:New -> Projects,选择Win32 MFC AppWizard(exe),并输入工程(counter)名字及设置好路径,点击OK,选择“Dialog based”,基于对话框,直接点finish。

    2、将对话框进行简单的处理,把无关的按钮删掉,添加自己的按钮及Edit Box,如图2。

    ?

    图2

    3、对按钮及Edit Box进行属性设置,比如按钮1属性设置为“IDC_BUTTON_1”,2设置为IDC_BUTTON_2,一直类推。Edit Box不仅要设置ID(IDC_DISPLAY),还要设置相关连的成员变量,右键,选择ClasssWizard..,在点击Add Variable..,这里设置为double m_display。

    4、对每个按钮添加消息处理函数,只需双击该按钮,按照提示点OK,就进入到了该函数入口处。

    1设置void CCounterDlg::OnButton1();

    2设置void CCounterDlg::OnButton2();

    ....

    其他类推。

    加 void CCounterDlg::OnButtonAdd();

    减void CCounterDlg::OnButtonSub();

    乘void CCounterDlg::OnButtonMult();

    除void CCounterDlg::OnButtonDiv();

    = void CCounterDlg::OnButtonEqual();

    5、定义成员变量

    int count; //计数

    BOOL dot_flg; //小数点标志

    BOOL continue_flg;//没按运算符,是否一直连续按数字按钮标志

    BOOL str_flag;//有没按运算符标志

    CString str;//记录当前按的运算符

    double result; //num1和num2运算的结果

    double num1; //按运算符之前的第一个数

    double num2; //按运算符之后的第二个数

    6、定义成员函数,该函数主要是对按下的数字进行叠加,跟踪num1和num2:

    double CCounterDlg::buttonDownNum(int numSize);

    7、当按下之后数字要及时显示出来,需要用到:

    UpdateData(FALSE); //该函数是对Edit Box的内容进行更新,FALSE是有内部数成员的数据值更新到界面上,TRUE是从界面上更新到内部的数据成员上。

    GetDlgItem(IDC_DISPLAY)->SetWindowText("小数点");//可以利用这个语句直接在Edit Box上显示内容“小数点”。只是提示自己也可以用这个来显示,程序中注释掉了。

    下面是代码:

    ?

    最后,如果你想学C++可以加入学习群:825414254获取素材资料以及开发工具和听课权限!(此群仅供CSDN粉丝交流,不是学C++的同学非诚勿扰哦!)

    cs
    下一篇:没有了