您好,登錄后才能下訂單哦!
本文小編為大家詳細介紹“C#怎么實現計算器窗體程序”,內容詳細,步驟清晰,細節處理妥當,希望這篇“C#怎么實現計算器窗體程序”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。
1、計算器中,添加 0-9 共十個數字鍵。
2、計算器中,增添 加、減、乘、除、等于五個功能鍵。
3、計算器中,增加四個功能鍵:x2,sqrt,log, ln 四個鍵,分別計算求平方,開方。
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 test3_1 { public partial class Form1 : Form { double result = 0; //存儲計算結果 double number = 0; //存儲輸入的數字 bool exist_value = false; //判斷文本框中是否有值 string operation; //存儲輸入的運算符 /* * 初始化 */ public Form1() { InitializeComponent(); } /* * 數字鍵觸發事件實現 */ private void Seven_Click(object sender, EventArgs e) { if (exist_value == true) { textBox1.Text = ""; exist_value = false; } textBox1.Text += "7"; } private void Eight_Click(object sender, EventArgs e) { if (exist_value == true) { textBox1.Text = ""; exist_value = false; } textBox1.Text += "8"; } private void Nine_Click(object sender, EventArgs e) { if (exist_value == true) { textBox1.Text = ""; exist_value = false; } textBox1.Text += "9"; } private void Four_Click(object sender, EventArgs e) { if (exist_value == true) { textBox1.Text = ""; exist_value = false; } textBox1.Text += "4"; } private void Five_Click(object sender, EventArgs e) { if (exist_value == true) { textBox1.Text = ""; exist_value = false; } textBox1.Text += "5"; } private void Six_Click(object sender, EventArgs e) { if (exist_value == true) { textBox1.Text = ""; exist_value = false; } textBox1.Text += "6"; } private void One_Click(object sender, EventArgs e) { if (exist_value == true) { textBox1.Text = ""; exist_value = false; } textBox1.Text += "1"; } private void Two_Click(object sender, EventArgs e) { if (exist_value == true) { textBox1.Text = ""; exist_value = false; } textBox1.Text += "2"; } private void Three_Click(object sender, EventArgs e) { if (exist_value == true) { textBox1.Text = ""; exist_value = false; } textBox1.Text += "3"; } private void Zero_Click(object sender, EventArgs e) { if (exist_value == true) { textBox1.Text = ""; exist_value = false; } textBox1.Text += "0"; } /* * 功能鍵觸發事件 */ private void Add_Click(object sender, EventArgs e) { if (textBox1.Text == "") { MessageBox.Show("請先輸入值再計算!", "錯誤提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { exist_value = true; number = double.Parse(textBox1.Text); operation = "+"; } } private void Sub_Click(object sender, EventArgs e) { if (textBox1.Text == "") { MessageBox.Show("請先輸入值再計算!", "錯誤提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { exist_value = true; number = double.Parse(textBox1.Text); operation = "-"; } } private void Mul_Click(object sender, EventArgs e) { if (textBox1.Text == "") { MessageBox.Show("請先輸入值再計算!", "錯誤提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { exist_value = true; number = double.Parse(textBox1.Text); operation = "*"; } } private void Div_Click(object sender, EventArgs e) { if (textBox1.Text == "") { MessageBox.Show("請先輸入值再計算!", "錯誤提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { exist_value = true; number = double.Parse(textBox1.Text); operation = "/"; } } private void Squ_Click(object sender, EventArgs e) { if (textBox1.Text == "") { MessageBox.Show("請先輸入值再計算!", "錯誤提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { exist_value = true; number = double.Parse(textBox1.Text); operation = "x^2"; } } private void Sqrt_Click(object sender, EventArgs e) { if (textBox1.Text == "") { MessageBox.Show("請先輸入值再計算!", "錯誤提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { exist_value = true; number = double.Parse(textBox1.Text); operation = "sqrt"; } } private void Log_Click(object sender, EventArgs e) { if (textBox1.Text == "") { MessageBox.Show("請先輸入值再計算!", "錯誤提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { exist_value = true; number = double.Parse(textBox1.Text); operation = "log"; } } private void Ln_Click(object sender, EventArgs e) { if (textBox1.Text == "") { MessageBox.Show("請先輸入值再計算!", "錯誤提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { exist_value = true; number = double.Parse(textBox1.Text); operation = "ln"; } } private void Del_Click(object sender, EventArgs e) { textBox1.Text = ""; } private void Equ_Click(object sender, EventArgs e) { switch (operation) { case "+": result = number + double.Parse(textBox1.Text); break; case "-": result = number - double.Parse(textBox1.Text); break; case "*": result = number * double.Parse(textBox1.Text); break; case "/": { double temp=double.Parse(textBox1.Text); if (temp != 0) result = number / temp; else MessageBox.Show("除數不能為零", "錯誤提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); break; } case "x^2": result = number * number; break; case "sqrt": result = Math.Sqrt(number); break; case "log": result = Math.Log10(number); break; case "ln": result = Math.Log(number); break; } textBox1.Text = result + ""; exist_value = true; } } }
界面設計
運行結果
讀到這里,這篇“C#怎么實現計算器窗體程序”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。