MFC编写的仿Windows计算器

首先你应该了解面向对象的基于消息驱动的Windows消息编程,当然,对于编写这个计算 器,你不必知道太多的windows编程,你重要会编写基于对话框的简单应用程序就可以了。

首先,让我们来仔细了解一下mircosoft的计算器吧,我们发现它是一个基于对话框 的含有两的主对话框、一个关于对话框、一个菜单的应用程序。也就是说,我们应该创建一 个基于对话框的应用程序,并且为其添加一个菜单和一个主对话框(因为,应用程序已经创 建好了一个主对话框和关于对话框)

接下来,我们应该设计对话框的界面了,这个是 很简单的事情,你只要将其和mircosoft的计算器比较就行了。当然,你也可以添加其他控件 。

第一个主对话框也就是默认的主程序界面,是用于执行简单计算(+、-、*、/、开 根、倒数、平方等)

第二个就是执行科学计算的程序了。用户可以用vc中的控件排版 工具和TAB设计出一个漂亮的界面(通常,程序的界面在很大程度上会影响程序的普及度和用 户的情绪的)。好了,上面的工作完成后,我们进入正题吧。

我们首先要为所有控件 指定一个ID号(一定要见ID知其意),比如0控件我们用ID_0表示。其他控件依次类推。设计 好ID后我们就应该为其添加变量,这里我们为所有的除了编辑控件外的控件指定CString型变 量,编辑控件为CEdit。然后我添加一些必要的成员变量(我们以简单计数器为例介绍)

public:
char m_sign; //记录运算符+、-、*、/等
int m; //控制 编辑框中的字符
int n; //用于判断连续进行了几次运算
CString strItem; // 用于记录当前编辑框中的数据
CString m_string; //用于记录前n-1次的运算结果

现在,我们编写构造函数:

m_hIcon = AfxGetApp()->LoadIcon (IDR_MAINFRAME);
m=n=0;
m_string="";
strItem="";

我们然后为数字键编写程序:

(以0为例) if(!m) {m_Edit.SetWindowText("");m++;} //用于得到连续的输入
m_Edit.GetWindowText(strItem); //将当前字符保存在strItem中
CString str="0";输入数字
strItem+=str;//连续输入字符
m_Edit.SetWindowText(strItem); //显示连续的输入

时间: 2024-09-15 23:10:40

MFC编写的仿Windows计算器的相关文章

C#编写的windows计算器的实例代码

这篇文章介绍了C#编写windows计算器的代码,有需要的朋友可以参考一下   复制代码 代码如下: using System; using System.Drawing; using System.Windows; using System.Windows.Forms; using System.Collections; using System.ComponentModel; using System.Data; namespace comput {     /// <summary>  

windows-软件Visual C++ 6怎么利用MFC编写Windows控制台应用程序,帮忙补下代码

问题描述 软件Visual C++ 6怎么利用MFC编写Windows控制台应用程序,帮忙补下代码 过程步骤: 新建一个名称为MFCConsole的工程,工程的类型是Win32 Console Application,并且选择An empty project.完成之后插入一个C++源文件,文件名为MFCConsole.cpp,并输入如下代码. 程序.MFCConsole.cpp 这是书上代码. #include #include #include CWinApp theApp; int _tma

用mfc编写一个windows文件资源管理器

问题描述 用mfc编写一个windows文件资源管理器 需要创建几个类,以及怎样封装哪些函数及数据 解决方案 http://download.csdn.net/download/mingyuan0826/2716853 解决方案二: VS2008SP1的有个Samples文件下的Explorer能实现类似的效果. ...Samples1033AllVCLanguageSamplesC++MFCVisual C++ 2008 Feature PackExplorer 解决方案三: 还有请问左右视图

c++-菜鸟提问:用mfc编写简单计算器

问题描述 菜鸟提问:用mfc编写简单计算器 要求:用switch语句,实现加减乘除和小数点,temp表结果,former第一个数,later第二个数,其他常量不限-- 解决方案 MFC简单计算器基于MFC的简单计算器MFC简单计算器 解决方案二: http://zhangzhenzhen2009.blog.163.com/blog/static/18703924720115851146127/ 解决方案三: 操作步骤: 1.启动Visual C++,新建一个Visual C++项目,选用MFC应

C#编写的windows计算器-源代码

window|源代码 选择自 CSPRO 的 Blog using System;using System.Drawing;using System.Windows;using System.Windows.Forms;using System.Collections;using System.ComponentModel;using System.Data; namespace comput{    /// <summary>    /// 这是一个计算器的简单实现.    /// <

mfc-Windows平台的MFC编写mjpg-streamer上位机程序

问题描述 Windows平台的MFC编写mjpg-streamer上位机程序 本人的毕业论文,,想通过MFC编写mjpg-streamer的客户端界面,只有简单观看视频功能就好,原本的mjpg-streamer只能通过火狐浏览器的浏览,如果我编写界面的话,是不是要加解码器什么的,还查到论坛中有人说用webbrowser的,但具体如何使用完全没有思路 T T 请教各位~有什么思路 谢谢! 解决方案 意思一个摄像头,采集回来数据播放到mfc里面? 直接用得到的数据放到mfc的图像框中就行了吧,一帧一

编写 unix和 windows的 Scala 脚本

编写 unix和 windows的 Scala 脚本 今天在看<Scala 编程>的时候看到附录了,里面提到了怎么在 unix 和 windows 下面编写 scala 脚本. 之前我也一直想用 scala 来在 unix 下写一些脚本,代替 shell,因为我对 shell 说实话不是很熟悉. 先直接给出一个可以正常的运行的例子把: #!/bin/sh exec scala "$0" "$@" !# 1.to(10).foreach(println)

Flash+JS 打造全屏仿windows

js|window Flash+JS 打造全屏仿windows 一.需求分析: 1:全屏页面分辨率需为 1024*768 如果低于此分辨率,画面精细的效果得不到体现.所以应该限制此分辩率以下的操作系统访问此界面. 2:打开的全屏窗口应该右上角有最小化.关闭按扭. 3:每个载入的窗口应该可以移动.关闭.最小化. 4:桌面上的图标可以拖动,双击. 5:屏幕底部有一个任务栏,当鼠标移至屏幕底部,任务栏从底部弹出.可以用一个按扭使其退回屏幕底部. 二.技术要点: Java Script:Screen 对

Android 仿Windows Metro 界面UI

布局采用LinearLayout来实现(比较喜欢这个布局,在UI之前要有全局考虑的思想,操作起来比较简单),每一个菜单都是一个Linear块,内部是一个ImageView和一个TextView:一共做了两个界面点击互相切换,下面是效果截图:            由于每个Linear块的属性配置都差不多很相似,所以提取出来做成了统一的style,在XML文件中引用则更方便一些   下面是UI设计的布局文件代码片段: <?xml version="1.0" encoding=&qu