欢迎来到天天文库
浏览记录
ID:37784147
大小:1.48 MB
页数:23页
时间:2019-05-31
《手把手教你MFC编程计算器制作教程》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、手把手教你MFC编程计算器第1页/共23页STEP1(页面设计部分与控件添加部分)首先打开VC,选择MFCAppWizard[exe],设定好路径和工程名(这里我设置工程名为为“My”)。这里要注意的是在创建向导步骤1的时候,我们选择“基本对话框”。之后我们可以点击完成便看到以下界面手把手教你MFC编程计算器第2页/共23页此时我们把当前页面上原配的控件按Delete全部清除(如下图)手把手教你MFC编程计算器第3页/共23页接着我们按照MFC自带的控件选项进行我们本次计算器的控件添加(以下是控件)手把手教你MFC编程计算器第4页/共23页我们在原先清空的界面中依次用上图控件画出一个基
2、本的计算器页面(如下图)。当然作为“所见即所得”的MFC控件设计,干净整齐的界面是基本要求,甚至会影响用户的心情。上图我们用按钮控件添加一共15个按钮,分别是数字“0~9”以及“+-*/”。手把手教你MFC编程计算器第5页/共23页每个控件“属性”都有属于它自己的ID,默认的按钮按键为IDC_BUTTON0,而且Cap当然我们为了“顾名思义”,对控件ID进行修改成我们容易辨认的(也可以不改),添加完控件并修改ID之后。(如下图)这里我们把数字按钮0设置ID为IDC_BUTTON14_NUM0,其他的依次类推完成修改ID后,就需给控件添加消息响应了,基本操作可以是直接双击控件,便会有向导
3、提示。MFC默认下了的响应信息都为On_开头,而且以下显示的是数字5的消息响应.之后所有的依次类推,这步骤一般不对成员函数名称做任何修改,直接点击OK即可手把手教你MFC编程计算器第6页/共23页之后就会跳转到具体的代码实现过程这里我们依次给每一个控件添加消息响应函数(以下仅列出一部分)手把手教你MFC编程计算器第7页/共23页手把手教你MFC编程计算器第8页/共23页到此为止我们基本上完成了计算器页面的前半部分预备工作,下来是我们的对控件具体实现代码的添加这里我把添加的控件消息响应函数列出来这里忘记了,提醒一点编辑框控件的ID是手把手教你MFC编程计算器第9页/共23页IDC_EDI
4、T1IDC_EDIT2IDC_EDIT3还有加减乘除的控件添加当初没有进行名字的设置默认为voidCMyDlg::OnButton1()//加voidCMyDlg::OnButton2()//减voidCMyDlg::OnButton3()//乘voidCMyDlg::OnButton4()//除////////////////////////////////////////////////////在开始第二步之前有一项工作时必须要做的,那便是添加3个成员变量和一个CEdit类的变量具体添加方法,就是右键主对话框CMyDlg->AddMemberVariable也可以是在菜单栏中选择“
5、查看”->“建立类向导”手把手教你MFC编程计算器第10页/共23页这里我们把3个编辑框控件内的变量都改变为double型的(因为进行四则运算难免出现小数点)之后再在控件IDC_EDIT3中选择"AddVariable"并且数据类型选择Control类型此时变量自动改为了CEdit类这步的意思是说我们把编辑框控件3的设置为CEdit类并且设置一个成员对象是m_CResult。手把手教你MFC编程计算器第11页/共23页//////////////////////////////////////////////////////////////////////////STEP2(控件消息响
6、应函数具体代码添加部分)首先从加法开始voidCMyDlg::OnButton1(){//TODO:AddyourcontrolnotificationhandlercodehereUpdateData();手把手教你MFC编程计算器第12页/共23页doublen_result;n_result=m_num1+m_num2;m_result=n_result;charsz[20];sprintf(sz,"%f",m_result);m_CResult.SetWindowText(sz);}UpdateData()是MFC的窗口函数,用来刷新数据的由于我们进行基本运算需要更新数据所以必
7、须添加这个函数。(可以认为是必须的)n_result=m_num1+m_num2;m_result=n_result;charsz[20];sprintf(sz,"%f",m_result);以上代码是进行加法的基本语句,然后数组保存并格式化打印输出。m_CResult.SetWindowText(sz);此句是把结果输出在之前用CEdit类创建的对象m_CResult,m_CResult调用SetWindowText(sz);把结果显示在编辑
此文档下载收益归作者所有