MFC计算器设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程名称:Visual C++面向对象与可视化程序设计
实验项目:计算器设计
姓名:
专业:计算机科学与技术
班级:
学号:
计算机科学与技术学院
实验教学中心
2016 年11月19日
哈尔滨理工大学计算机科学与技术学院实验报告
实验项目名称:计算器设计( 2课时)
一、实验目的
1.灵活使用MFC应用程序设计
2.设计计算器
二、实验内容
设计一个简单的计算器,可以实现加法,减法,除法,乘法,取模,开平方,输入数字要求可以输入小数,可以连加。具有清空,回退功能。
三、实验步骤
1.启动VS打2012开新建项目
2.出现的New对话框的Projects标签内选择MFC应用程序
3.Projects Name指定项目的名字,在Location中指定路径后按OK按钮
4.选择创建类型,(例如基于对话框),确定项目类型后按Finish完成。
5.编写实验代码
四、实验结果
五、程序代码
// project_1Dlg.h : 头文件
//
#pragma once
#include "afxwin.h"
// Cproject_1Dlg 对话框
class Cproject_1Dlg : public CDialogEx
{
// 构造
public:
Cproject_1Dlg(CWnd* pParent = NULL); // 标准构造函数void Equal2();
void Cproject_1Dlg::AddDigit(char numKey);
// 对话框数据
enum { IDD = IDD_PROJECT_1_DIALOG };
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持
// 实现
protected:
HICON m_hIcon;
long double m_op1,m_op2,m_result;
int m_operation;
int i,s;
long double r;
long double m_m;
long double data[50];
bool st1,st2;
bool pflag;
long double p;
// 生成的消息映射函数
virtual BOOL OnInitDialog();
afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
afx_msg void OnPaint();
afx_msg HCURSOR OnQueryDragIcon();
DECLARE_MESSAGE_MAP()
public:
double m_num;
CEdit m_control_e;
BOOL m_inv;
BOOL m_hp;
// CString m_sd;
CString m_sd;
afx_msg void OnClicked1x();
afx_msg void OnClickedAdd();
afx_msg void OnClickedB1();
afx_msg void OnClickedB2();
afx_msg void OnClickedB3();
afx_msg void OnClickedB4();
afx_msg void OnClickedB5();
afx_msg void OnClickedB6();
afx_msg void OnClickedB7();
afx_msg void OnClickedB8();
afx_msg void OnClickedB9();
afx_msg void OnClickedB10();
afx_msg void OnClickedClaer();
afx_msg void OnClickedClaer2();
afx_msg void OnClickedBp();
afx_msg void OnClickedBp2();
afx_msg void OnClickedBsp();
afx_msg void OnClickedM();
afx_msg void OnClickedMc();
afx_msg void OnClickedMm();
afx_msg void OnClickedMod();
afx_msg void OnClickedSqrt();
afx_msg void OnClickedMr();
afx_msg void OnClickedSubract();
afx_msg void OnClickedMul();
afx_msg void OnClickedDevide();
afx_msg void OnChangeEdit1();
afx_msg void OnClickedEqual();
};
// project_1Dlg.cpp : 实现文件
//
#include "stdafx.h"
#include "project_1.h"
#include "project_1Dlg.h"
#include "afxdialogex.h"
#include
#ifdef _DEBUG
#define new DEBUG_NEW
#endif
// 用于应用程序“关于”菜单项的 CAboutDlg 对话框
class CAboutDlg : public CDialogEx
{
public:
CAboutDlg();
// 对话框数据
enum { IDD = IDD_ABOUTBOX };
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持// 实现