- 1、本文档共18页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
VS2008下计算器的MFC编程实现
VS2008下计算器的MFC编程实现
简单的计算器编程,完全在VS2008下实现,主要用于熟悉VS2008的功能。
谨以此分享给和我一样初学MFC的朋友们。
STEP1:页面设计
1.新建工程
首先打开Visual Studio2008,选择MFC应用程序,设定好路径和工程名(这里我设置工程名为为“Calculator”)。这里要注意的是在创建向导步骤1的时候,我们选择“基本对话框”,其他选项默认即可 。?
之后我们可以点击完成便看到以下界面:
此时我们把当前页面上原配的控件按Delete全部清除(如下图)
2.添加控件
接着我们按照MFC自带的控件选项进行我们本次计算器的控件添加。
点击右侧的工具栏按钮(以下是控件)
我们在原先清空的界面中依次用上图控件画出一个基本的计算器页面(如下图)。
当然作为“所见即所得”的MFC控件设计,干净整齐的界面是基本要求,甚至会影响用户的心情。
3.修改空间ID和Caption
上图各控件类型如下:
Group Box:选择其中一个GroupBox,右键单击,选择[属性]。在右边显示属性对话框。
每个控件“属性”都有属于它自己的ID,默认的Group Box的ID为IDC_STATIC,而且Cap当然我们为了“顾名思义”,对控件ID进行修改成我们容易辨认的(也可以不改),添加完控件并修改ID。4个Group Box的ID分别修改为IDC_STATIC_FRAME ,IDC_STATIC_IN, IDC_STATIC_RESULT, IDC_STATIC_BUTTON
控件Edit Control和Button也按相同的办法处理。ID设置完成可以在“Resourse.h”中查看。
?
完成修改ID后,就需给控件添加消息响应了。在属性对话框的上方点击闪电“”图标,添加控件事件。如对于按钮“”,点击“”
点击下拉键头,添加控件事件,页面自动切换到代码的编辑页面,如“添加OnBnClickedButton5”
MFC默认下了的响应信息都为On_开头。
到此为止 我们基本上完成了计算器页面的前半部分预备工作,接下来是我们的对控件具体实现代码的添加
?这里我把添加的控件消息响应函数列出来。点击左侧栏的“类试图”(或者选择菜单项“视图(V)”——“类试图”)
4.添加成员变量
在开始第二步之前有一项工作时必须要做的,那便是添加3个成员变量和一个CEdit类的变量
具体添加方法:右键“类视图”中的类“CMyDlg”,选择“添加变量”。
也可以是在菜单栏中选择“项目”——“添加变量”。
在添加变量向导(如下图)中?
勾选“控件变量”,“控件ID”选择“IDC_EDIT1”,“类别”选择“Value”,“变量类型”选择“double”,变量名“m_num1”,点击“完成”,添加成功。然后依次为另外两个编辑框添加变量“m_num2”“m_num3”。这里我们把3个编辑框控件内的变量都改变为double型的(因为进行四则运算难免出现小数点)。
之后再在控件IDC_EDIT3中“类别”选择“ Control”类型 此时变量自动改为了 CEdit类,这步的意思是说 我们把编辑框控件3的设置为CEdit类 并且设置一个成员对象是m_CResult。
STEP2:控件消息响应函数具体代码添加部分
1.四则运算符
首先从加法开始
void CCalculatorDlg::OnBnClickedButton11Add()
{
// TODO: 在此添加控件通知处理程序代码
UpdateData();//刷新数据
double n_result;
n_result = m_num1 + m_num2;
m_result = n_result;//加法的计算过程
char sz[20];
sprintf(sz,%f,m_result);
m_CResult.SetWindowTextA(sz);//打印输出
}
UpdateData() 是MFC的窗口函数,用来刷新数据的由于我们进行基本运算需要更新数据 所以必须添加这个函数。(可以认为是必须的)
?
n_result = m_num1 + m_num2;m_result = n_result;char sz[20];sprintf(sz,%f,m_result);
以上代码是进行 加法的基本语句,然后数组保存并格式化打印输出。
m_CResult.SetWindowText(sz);此句是把结果输出在之前用CEdit类创建的对象m_CResult,m_CResult调用SetWindowTextA(sz);把结果显示在编辑框中。
剩下的减法 乘法 和除法 也是大同小异(只是把 符号小改一下便可~~)
这里贴出所有加减乘除的代码
void CCalc
您可能关注的文档
- unit2_reading-come_and_eat_here 阅读.ppt
- unit4 my calendar1 months 2 日历 月份.ppt
- Unit3_My_school_calendar_B Let’s learn第5课时教学课件.ppt
- unit4 Lesson 22In the Restaurant(冀教版七年级上册).ppt
- Unit5加拿大的简要介绍.ppt
- Unit_9_When_was_it_invented精品课件Section_B_2.ppt
- UNT-CM通讯管理机说明书.doc
- UPS逻辑.ppt
- UPS安装培训.ppt
- U盘隐藏分区的相关知识:u盘启动盘制作工具.pptx
文档评论(0)