计算器界面如下:
- 首先制定对话框,一个
edit control
,16个button
,然后分别命名ID,给button们创建消息处理函数,给编辑框设置变量(double
)
2.然后明确功能:(有四类)
- 数字类
- 运算符类
- Clear类
- Equal类
创建三个变量num1,num2,num3,分别保存被加数、加数、运算符字符的枚举值
假如依次键入
a + b =
//数字类
//在数字a的消息处理函数 num1 =a; m_result = num1; //控件变量 UpdateData(FALSE);
然后封装起来写成
void NUMBER(int a)
函数
//运算符类
// 利用加减乘除的逻辑枚举为enum{ADD=1,SUB,MUL,DIV}; num2 = ADD; num3 = num1; UpdateData(FALSE);
将上面代码封装成
void EXPRESSION(int n)
函数
//equal类
//首先判断运算符号,然后m_result = num1 (符号) num3;
//这里用medium代替num3
UpdateData(TRUE);
switch (num2) {
case 1:
m_result = medium + num1;
break;
case 2:
m_result = medium - num1;
break;
case 3:
m_result = medium * num1;
break;
case 4:
m_result = medium / num1;
break;
default:
break;
}
UpdateData(FALSE);
//clear类
m_result = 0;
num1 = 0;
num2 = 0;
medium = 0;
UpdateData(FALSE);
将四种功能封装成四个函数,在相应的消息处理函数里调用方可
效果图:(6/5)