2012-11-17 12:28 用MFC实现的计算器(详细版)

简介: 这篇文章里通过计算器的简单实现,让大家能够了解一般对话框应用程序开发的基本流程 要求:编写简单的计算器应用程序,要求利用按钮进行加、减、乘,除操作,在对话框输出计算机结果。           下面结合操作步骤,讲解对话框应用程序开发的基本流程:          (1)、在对话框资源上添加按钮和编辑框控件,并设置按钮控件和编辑框控件的标题和ID,并且                         将编辑框设置为只读属性。

这篇文章里通过计算器的简单实现,让大家能够了解一般对话框应用程序开发的基本流程

要求:编写简单的计算器应用程序,要求利用按钮进行加、减、乘,除操作,在对话框输出计算机结果。

          下面结合操作步骤,讲解对话框应用程序开发的基本流程:

         (1)、在对话框资源上添加按钮和编辑框控件,并设置按钮控件和编辑框控件的标题和ID,并且   

                     将编辑框设置为只读属性。最终的运行结果如下图。

      

 

         (2)、添加单机数字按钮和加、减、乘、除按钮,及单机“等号”按钮的消息响应函数

         (3)、添加消息响应函数的函数体。

         (4)、程序调试无错误后,进行测试,分析测试结果。保证程序的正确性。

        下面分析本程序的代码:

         1、新建一个对话框应用程序Test,采用默认设置;

 

         2、在类CTestDlg中添加数据成员:

               CString num1;       //数值计算符号前面的数值
               CString num2;       //数值计算后面的数值
               BOOL isresult;        //是否按下加、减、乘、除符号
               int witch;                //是加、减、乘、除哪种计算

 

         3、在CTestDlg::OnInitDialog()函数中对相关变量进行初始化

              num1="";        //第一个数据 
              num2="";        //第二个数据
              isresult=FALSE;     //保存是否点击了运算按钮
              witch=0;              //保存运算按钮

 

        4、然后是按钮的响应的函数,下面对同一类的按钮响应函数只列出了一个,其他的都是一样的

          void CGeliangDlg::OnN1()                   //单击“1”按钮
         {
             // TODO: Add your control notification handler code here
             if(isresult==FALSE)
            {

                 num1+="1";
                 m_result=num1;
                 UpdateData(false);
            }
            if(isresult==TRUE)

             {

                num2+="1";
                m_result=num2;
               UpdateData(false);
            }
         }

 

        void CGeliangDlg::OnN10()          //单击“+\-按钮”
        {
             // TODO: Add your control notification handler code here
             CString m_m="-";
             if(isresult==FALSE)
            {

             m_m+=num1;
             m_result=m_m;
             UpdateData(false);
            }
           if(isresult==TRUE)
            {

             m_m+=num2;
            m_result=m_m;
            UpdateData(false);
            } 
       }

 

       void CGeliangDlg::OnN11()                   //单击“.”按钮
        {
              // TODO: Add your control notification handler code here
              if(isresult==FALSE)
              {

                num1+=".";
                m_result=num1;
                UpdateData(false);
               }
               if(isresult==TRUE)
               {

                num2+=".";
                m_result=num2;
                UpdateData(false);
               }
            }


        void CGeliangDlg::OnJia()                  //单击“+”按钮
           {
             // TODO: Add your control notification handler code here
             isresult=TRUE;
            witch=1;
           }

 

      void CGeliangDlg::OnResult()            //单击“=”按钮
      {
           // TODO: Add your control notification handler code here
           double number1=atof(num1);
           double number2=atof(num2);
           double result=0.0;
           switch(witch)
           {
               case 1:result=number1+number2;break;
              case 2:result=number1-number2;break;
              case 3:result=number1*number2;break;
              case 4:result=number1/number2;break;
              default:AfxMessageBox("程序运行错误");break;
           }
      m_result="";
     m_result.Format("%f",result);
     UpdateData(false);

}

 

 

上面的程序代码中,仅给出数字按钮,符号按钮和“+/-”按钮,及“.”按钮,的响应函数。数字键按钮的代码是基本类似的

,符号按钮的代码也是类似的,读者可以自己写出其他按钮的消息映射,然后编写函数代码。

 

技术改变世界! --狂诗绝剑
目录
相关文章
|
6月前
|
人工智能 生物认证 计算机视觉
winform实现简单的计算器V1版本
winform实现简单的计算器V1版本
winform实现简单的计算器V1版本
|
6月前
MFC应用创建计算器
MFC应用创建计算器
31 0
|
6月前
|
C语言
使用C语言编写一个简单的计算器程序
使用C语言编写一个简单的计算器程序
257 0
|
C++ Python
Qt+C++桌面计算器源码
Qt+C++桌面计算器源码
161 0
Qt+C++桌面计算器源码
|
5月前
|
C++ Windows
第1个Qt项目:计算器
第1个Qt项目:计算器
第1个Qt项目:计算器
|
API 调度 开发工具
03 MFC - 入门程序
03 MFC - 入门程序
56 0
|
6月前
|
C语言
C语言程序基本的计算器功能
C语言程序基本的计算器功能
129 0
|
6月前
MFC编写DLL窗口功能代码
MFC编写DLL窗口功能代码
33 0
|
6月前
|
小程序 Python
tkinter之计算器小程序
tkinter之计算器小程序
78 6
|
存储 机器学习/深度学习 C语言
利用C语言实现简单的计算器程序
在日常生活中,计算器是一个不可或缺的工具。它可以帮助我们进行各种数学计算,从简单的加减乘除到复杂的三角函数和指数运算。而使用C语言编写一个简单的计算器程序,则是一个很有挑战性和有趣的任务。
210 0