C#计算器代码,根据所提供的窗体

窗体的图片已经提供了啊,我想做一个最简单的,数字符号按键都用
textbox+="";写的,现就是想用计算键来实现各符号的运算啊.请各位高手帮忙,答好追加分.

public Form1()
{
InitializeComponent();
}

//小数点
private void butpiont_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
textBox1.Text = textBox1.Text + btn.Text;

}

private void button1_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
textBox1.Text += btn.Text;
}

private void button2_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
textBox1.Text += btn.Text;
}

private void button3_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
textBox1.Text += btn.Text;
}

private void button4_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
textBox1.Text += btn.Text;
}

private void button5_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
textBox1.Text += btn.Text;
}

private void button6_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
textBox1.Text += btn.Text;
}

private void button7_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
textBox1.Text += btn.Text;
}

private void button8_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
textBox1.Text += btn.Text;
}

private void button9_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
textBox1.Text += btn.Text;
}

private void button10_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
textBox1.Text += btn.Text;
}
//加号
private void butadd_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
textBox1.Text = textBox1.Text + " " + btn.Text + " ";
}

private void butjian_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
textBox1.Text = textBox1.Text + " " + btn.Text + " ";
}

private void butcheng_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
textBox1.Text = textBox1.Text + " " + btn.Text + " ";
}

private void butchu_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
textBox1.Text = textBox1.Text + " " + btn.Text + " ";
}

private void butClear_Click(object sender, EventArgs e)
{
textBox1.Text = "";
}

//等号
private void butResult_Click(object sender, EventArgs e)
{
try
{
double d_result;

string s_txt = textBox1.Text;

int space = s_txt.IndexOf(' ');

string s1 = s_txt.Substring(0, space);

char operation = Convert.ToChar(s_txt.Substring((space + 1), 1));

string s2 = s_txt.Substring(space + 3);

double arg1 = Convert.ToDouble(s1);

double arg2 = Convert.ToDouble(s2);

switch (operation)
{

case '+':

d_result = arg1 + arg2;

break;

case '-':

d_result = arg1 - arg2;

break;

case '*':

d_result = arg1 * arg2;

break;

case '/':

if (arg2 == 0)
{
//MessageBox.Show("错误");

throw new ApplicationException();

}

else
{

d_result = arg1 / arg2;

}

break;

default:

throw new ApplicationException();

}

textBox1.Text = d_result.ToString();
}
catch { MessageBox.Show("您正在执行非法操作!"); };

}

比你的多个小数点呢,你的计算是我这里的等号
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-04-12
我太懒了,还是让楼下的回答吧。我懒的写这么多代码。
相似回答