效果图:
演示:**
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace calculator
{
public partial class CalculatorForm : Form
{
public CalculatorForm()
{
InitializeComponent();
}
private void btn1_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
txtResult.Text += btn.Text;
}
private void btn2_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
txtResult.Text += btn.Text;
}
private void btn3_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
txtResult.Text += btn.Text;
}
private void btn4_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
txtResult.Text += btn.Text;
}
private void btn5_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
txtResult.Text += btn.Text;
}
private void btn6_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
txtResult.Text += btn.Text;
}
private void btn7_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
txtResult.Text += btn.Text;
}
private void btn8_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
txtResult.Text += btn.Text;
}
private void btn9_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
txtResult.Text += btn.Text;
}
private void btn0_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
txtResult.Text += btn.Text;
}
private void btnAdd_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
txtResult.Text = txtResult.Text + " " + btn.Text + " ";
}
private void btnSub_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
txtResult.Text = txtResult.Text + " " + btn.Text + " ";
}
private void btnMul_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
txtResult.Text = txtResult.Text + " " + btn.Text + " ";
}
private void btnDiv_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
txtResult.Text = txtResult.Text + " " + btn.Text + " ";
}
private void btnClear_Click(object sender, EventArgs e)
{
txtResult.Text = "";
}
private void btnCalculate_Click(object sender, EventArgs e)
{
Single r;
string t = txtResult.Text;
int space = t.IndexOf(' ');
string s1 = t.Substring(0, space);
char op = Convert.ToChar(t.Substring(space + 1, 1));
string s2 = t.Substring(space + 3);
Single arg1 = Convert.ToSingle(s1);
Single arg2 = Convert.ToSingle(s2);
switch (op)
{
case '+':
r = arg1 + arg2;
break;
case '-':
r = arg1 - arg2;
break;
case '*':
r = arg1 * arg2;
break;
case '/':
if (arg2 == 0)
{
throw new ApplicationException();
}
else
{
r = arg1 / arg2;
break;
}
//break;
default:
throw new ApplicationException();
}
txtResult.Text = r.ToString();
}
}
}