当前位置:文档之家› 简易计算器C#界面设计与代码

简易计算器C#界面设计与代码


{ setText("7"); } private void btn8_Click(object sender, EventArgs e) { setText("8"); } private void btn9_Click(object sender, EventArgs e) { setText("9"); } private void btn0_Click(object sender, EventArgs e) { setText("0"); } private void btnPoint_Click(object sender, EventArgs e) { setDecimal(); } private void bgs e) { changeSign(); } private void btnEqual_Click(object sender, EventArgs e) { doEquals(); } private void btnAdd_Click(object sender, EventArgs e) { setOperator(1); } private void btnSub_Click(object sender, EventArgs e) {
private void changeSign() { double storNum; if (textBox1.Text.Length > 0) { storNum = double.Parse(textBox1.Text); storNum *= -1; textBox1.Text = storNum.ToString(); } btnEqual.Select(); //设置"="号的焦点 } //执行运算 private void doEquals() { if (isNokeydown) 号键 { mainNum2 = double.Parse(textBox1.Text); setText("clear"); Calc(mainNum1, mainNum2, opMain); isDone = true; isNokeydown = false; } } //设置运算类型 private void setOperator(int operation) { if (textBox1.Text.Length > 0) { opMain = operation; mainNum1 = double.Parse(textBox1.Text); isSecond = true; isDone = false; isNokeydown = true; btnEqual.Select(); //设置"="号的焦点 } } //设置小数点
isDone = false; } else { if (isKeyupclear) 键的判断 { textBox1.Text = textest; isKeyupclear = false; } else textBox1.Text += textest; } } } btnEqual.Select(); //设置"="号的焦点 //对是否按下clear
} public void Calc(double num1, double num2, int op) { double answer = 0; switch (op) //判断所进行的运算 { case 1: answer = num1 + num2; break; case 2: answer = num1 - num2; break; case 3: answer = num1 * num2; break; case 4: answer = num1 / num2; break; case 5: answer = num1 % num2; break; } setText(answer.ToString()); //显示结果 } //切换正负
setOperator(2); } private void btnMulti_Click(object sender, EventArgs e) { setOperator(3); } private void btnDivide_Click(object sender, EventArgs e) { setOperator(4); } private void btnC_Click(object sender, EventArgs e) { isSecond = false; setText("clear"); } private void btnSqrt_Click(object sender, EventArgs e) { doSquart(); } private void btnBackspace_Click(object sender, EventArgs e) { string old = textBox1.Text; if (old.Length > 1 && old != "0.") textBox1.Text = old.Substring(0, old.Length - 1); else textBox1.Text = "0."; }
//判断已经输入第二个数后按了"="
private void setDecimal() { if (!isDecimal) { setText("."); isDecimal = true; } btnEqual.Select(); //设置"="号的焦点 } private void btn1_Click(object sender, EventArgs e) { setText("1"); } private void btn2_Click(object sender, EventArgs e) { setText("2"); } private void btn3_Click(object sender, EventArgs e) { setText("3"); } private void btn4_Click(object sender, EventArgs e) { setText("4"); } private void btn5_Click(object sender, EventArgs e) { setText("5"); } private void btn6_Click(object sender, EventArgs e) { setText("6"); } private void btn7_Click(object sender, EventArgs e)
} }
简易计算器C#界面设计与代码
简易计算器是用vs2008编译的c#程序,仅供参考,存在不足之处,望大家见谅! windows界面设计
using using using using using using using using
System; System.Collections.Generic; ponentModel; System.Data; System.Drawing; System.Linq; System.Text; System.Windows.Forms;
private void doSquart() { double storNum; storNum = double.Parse(textBox1.Text);
if (storNum > 0) { storNum = Math.Sqrt(storNum); textBox1.Text = storNum.ToString(); } else textBox1.Text = "负数不能开平方。"; btnEqual.Select(); //设置"="号的焦点 } private void btnπ_Click(object sender, EventArgs e) { setText("3.1415926"); } private void btnPercentage_Click(object sender, EventArgs e) { setOperator(5); } private void btnReciprocal_Click(object sender, EventArgs e) { doreciprocal(); } private void doreciprocal() { double storNum; storNum = double.Parse(textBox1.Text); if (storNum != 0) { storNum = 1 / storNum; textBox1.Text = storNum.ToString(); } else textBox1.Text = "除数不能为零。"; btnEqual.Select(); }
namespace 简易计算器 { public partial class Form1 : Form {
public Form1() { InitializeComponent(); } private int opMain = 0; // 运算类型,其中1(加法) 2(减法) 3(乘法) 4(除法) private double mainNum1 = 0; // 存储第一个数 private double mainNum2 = 0; // 存储第二个数 private bool isSecond = false; // 用来判断输入的是第一个还是第二 个数 private bool isDone = false; // 用来判断是否按了等于按钮 private bool isDecimal = false; // 用来判断是否有小数 private bool isNokeydown = false;// 用来判断是否没输入第二个数而 按了"="号键 private bool isKeyupclear = true;//用来判断是否按了clear键,程序开 始前默认按了; public void setText(string textest) //设置文本框的值 { if (textest.Equals("clear")) { textBox1.Text = "0."; isSecond = false; isDone = false; isDecimal = false; isKeyupclear = true; } else { if (isSecond) { textBox1.Text = textest; isSecond = false; isDecimal = false; } else { if (isDone) { textBox1.Text = textest;
相关主题