vs2008 mfc基于对话框的简单计算器

加减乘除在下拉列表中,等于(button)按钮。的程序,,,,急求解,给个文件。863637209@... 加减乘除在下拉列表中,等于(button)按钮。的程序,,,,急求解,给个文件。863637209@ 展开
 我来答
yvhpfiipfi
2014-05-26 · TA获得超过2912个赞
知道小有建树答主
回答量:880
采纳率:50%
帮助的人:691万
展开全部
楼主你好!

这个程序要求不高,非常简单,我已经为你做了一个,请自行建一个MFC工程,将下面代码贴在对应位置即可编译运行:

第一步:
新建基于对话框的MFC程序,工程名 JiSuanQi

第二步:
在stdafx.h中,添加:
#include <stdlib.h>
#include <comdef.h>
#define DF_JIA WM_USER + 1001
#define DF_JIAN WM_USER + 1002
#define DF_CHENG WM_USER + 1003
#define DF_CHU WM_USER + 1004

第三步:
在JiSuanQi.h中的对话框类中,添加:
private:
float GetResult(float fData_01, float fData_02, LONG nFlag);
private:
CString m_strData_01,
m_strData_02,
m_strResult;

第四步:
在JiSuanQi.cpp中,添加:
float CJiSuanQiDlg::GetResult(float fData_01, float fData_02, LONG nFlag)
{
switch (nFlag)
{
case DF_JIA:
return (float)(fData_01 + fData_02);
break;
case DF_JIAN:
return (float)(fData_01 - fData_02);
break;
case DF_CHENG:
return (float)(fData_01 * fData_02);
break;
case DF_CHU:
return (float)(fData_01 / fData_02);
break;
}
return -(float)1;
}

第五步:(最后一步),在按钮事件函数中比如void CJiSuanQiDlg::OnBnClckedOk()
void CJiSuanQiDlg::OnBnClickedOk()
{
CString strTurn = _T("");
LONG nFlag = NULL;
GetDlgItemText(IDC_EDIT1, m_strData_01);
GetDlgItemText(IDC_EDIT2, m_strData_02);
GetDlgItemText(IDC_COMBO1, strTurn);
if (strTurn == _T("+"))
nFlag = DF_JIA;
if (strTurn == _T("-"))
nFlag = DF_JIAN;
if (strTurn == _T("×"))
nFlag = DF_CHENG;
if (strTurn == _T("÷"))
nFlag = DF_CHU;
m_strResult.Format(
_T("%f"),
this->GetResult(atof((_bstr_t)m_strData_01), atof((_bstr_t)m_strData_02), nFlag)
);
SetDlgItemText(IDC_EDIT3, m_strResult);
//OnOK();
}

这样,你就可以尝试编译运行了,祝你成功!

希望能为你带来帮助,谢谢!
匿名用户
2014-05-26
展开全部
灌灌灌灌灌哥哥哥哥哥哥
追问

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式