c语言如何创建一个按钮?做计算器用
3个回答
展开全部
这是一个简单计算器程序:
1)创建一个对话框的应用
2)向对话框中添加一个编辑框控件和十六个按钮
3)在头文件声明:
double m_Num; //记录编辑框中的数据
BOOL m_Time; //判断是否为第一次按下数字键
char m_Operator; //保存运算符
4)处理数字“1”按钮的单击事件将按钮代表的数字写入编辑框中,代码:
void CCalculatorDlg::OnButton1()
{
// TODO: Add your control notification handler code here
UpdateData(TRUE);
if(m_Time == TRUE)
{
m_Result = 0;
}
m_Result = m_Result * 10 + 1;
m_Time = FALSE;
UpdateData(FALSE);
}
5)按照步骤4设置其他的数字按钮的单击事件
6)添加Count函数,用于计算数据,代码如下:
void CCalculatorDlg::Count()
{
UpdateData(TRUE);
switch(m_Operator)
{
case '+':
m_Num += m_Result;
break;
case '-':
m_Num -= m_Result;
break;
case '*':
m_Num *= m_Result;
break;
case '/':
if(m_Result == 0)
{
MessageBox("除数不能为0");
return;
}
m_Num /= m_Result;
break;
default:
m_Num = m_Result;
break;
}
m_Result = m_Num;
m_Time = TRUE;
UpdateData(FALSE);
}
7)处理“+”,为m_Operator变量赋值。代码:
void CCalculatorDlg::OnButton13()
{
// TODO: Add your control notification handler code here
if(m_Time == FALSE)
{
Count();
}
m_Operator = '+';
}
8)按照步骤7设置其他符号按钮的单击事件
9)处理“C”按钮的单击事件,用于清空编辑框中的数据,代码
void CCalculatorDlg::OnButton11()
{
// TODO: Add your control notification handler code here
UpdateData(TRUE);
m_Result = 0;
m_Num = 0;
m_Time = TRUE;
m_Operator = ' ';
UpdateData(FALSE);
}
以上运行结果正常,不过结果贴不上来啊,就靠自己了啊
1)创建一个对话框的应用
2)向对话框中添加一个编辑框控件和十六个按钮
3)在头文件声明:
double m_Num; //记录编辑框中的数据
BOOL m_Time; //判断是否为第一次按下数字键
char m_Operator; //保存运算符
4)处理数字“1”按钮的单击事件将按钮代表的数字写入编辑框中,代码:
void CCalculatorDlg::OnButton1()
{
// TODO: Add your control notification handler code here
UpdateData(TRUE);
if(m_Time == TRUE)
{
m_Result = 0;
}
m_Result = m_Result * 10 + 1;
m_Time = FALSE;
UpdateData(FALSE);
}
5)按照步骤4设置其他的数字按钮的单击事件
6)添加Count函数,用于计算数据,代码如下:
void CCalculatorDlg::Count()
{
UpdateData(TRUE);
switch(m_Operator)
{
case '+':
m_Num += m_Result;
break;
case '-':
m_Num -= m_Result;
break;
case '*':
m_Num *= m_Result;
break;
case '/':
if(m_Result == 0)
{
MessageBox("除数不能为0");
return;
}
m_Num /= m_Result;
break;
default:
m_Num = m_Result;
break;
}
m_Result = m_Num;
m_Time = TRUE;
UpdateData(FALSE);
}
7)处理“+”,为m_Operator变量赋值。代码:
void CCalculatorDlg::OnButton13()
{
// TODO: Add your control notification handler code here
if(m_Time == FALSE)
{
Count();
}
m_Operator = '+';
}
8)按照步骤7设置其他符号按钮的单击事件
9)处理“C”按钮的单击事件,用于清空编辑框中的数据,代码
void CCalculatorDlg::OnButton11()
{
// TODO: Add your control notification handler code here
UpdateData(TRUE);
m_Result = 0;
m_Num = 0;
m_Time = TRUE;
m_Operator = ' ';
UpdateData(FALSE);
}
以上运行结果正常,不过结果贴不上来啊,就靠自己了啊
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询