实例介绍
【实例简介】
基于VS15 的 C# .NET Framework 4.5 用于简单的加减乘除以及平方开方等计算
【实例截图】
【核心代码】
public partial class MyCalculator : Form
{
double a = 0;
double b = 0;
bool c = false;
string d;
public MyCalculator()
{
InitializeComponent();
}
/// <summary>
/// 窗体加载 结果默认空字符
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void MyCalculator_Load(object sender, EventArgs e)
{
txtResult.Text = "";
txtResult.TextAlign = HorizontalAlignment.Right;//用来设置文本框的文字的位置,居右显示
}
/// <summary>
/// 平方
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnPF_Click(object sender, EventArgs e)
{
if (txtResult.Text == "")
{
MessageBox.Show("文本框内不存在数值,不可计算平方值");
return;
}
else if (txtResult.Text == ".")
{
MessageBox.Show("文本框内数值不正确,不可计算平方值");
return;
}
else
{
c = true;
b = double.Parse(txtResult.Text);
d = "x2";
}
}
/// <summary>
/// 开方
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnKF_Click(object sender, EventArgs e)
{
if (txtResult.Text == "")
{
MessageBox.Show("文本框内不存在数值,不可计算开方值");
return;
}
else if (txtResult.Text == ".")
{
MessageBox.Show("文本框内数值不正确,不可计算开方值");
return;
}
else
{
c = true;
b = double.Parse(txtResult.Text);
d = "sqrt";
}
}
/// <summary>
/// log
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnLog_Click(object sender, EventArgs e)
{
if (txtResult.Text == "")
{
MessageBox.Show("文本框内不存在数值,不可计算 Log 值");
return;
}
else if (txtResult.Text == ".")
{
MessageBox.Show("文本框内数值不正确,不可计算 Log 值");
return;
}
else
{
c = true;
b = double.Parse(txtResult.Text);
d = "Log";
}
}
/// <summary>
/// OFF(关闭计算器)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnOff_Click(object sender, EventArgs e)
{
if (MessageBox.Show(this, string.Format("您是真的关闭此计算机吗?", "关闭提示信息"), "关闭提示信息", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
{
this.Close();
}
}
/// <summary>
/// 7
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn7_Click(object sender, EventArgs e)
{
if (c == true)
{
txtResult.Text = "";
c = false;
}
txtResult.Text = "7";
}
/// <summary>
/// 8
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn8_Click(object sender, EventArgs e)
{
if (c == true)
{
txtResult.Text = "";
c = false;
}
txtResult.Text = "8";
}
/// <summary>
/// 9
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn9_Click(object sender, EventArgs e)
{
if (c == true)
{
txtResult.Text = "";
c = false;
}
txtResult.Text = "9";
}
/// <summary>
///
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnJia_Click(object sender, EventArgs e)
{
c = true;
b = double.Parse(txtResult.Text);
d = " ";
}
/// <summary>
/// 4
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn4_Click(object sender, EventArgs e)
{
if (c == true)
{
txtResult.Text = "";
c = false;
}
txtResult.Text = "4";
}
/// <summary>
/// 5
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn5_Click(object sender, EventArgs e)
{
if (c == true)
{
txtResult.Text = "";
c = false;
}
txtResult.Text = "5";
}
/// <summary>
/// 6
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn6_Click(object sender, EventArgs e)
{
if (c == true)
{
txtResult.Text = "";
c = false;
}
txtResult.Text = "6";
}
/// <summary>
/// -
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnJian_Click(object sender, EventArgs e)
{
c = true;
b = double.Parse(txtResult.Text);
d = "-";
}
/// <summary>
/// 1
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn1_Click(object sender, EventArgs e)
{
if (c == true)
{
txtResult.Text = "";
c = false;
}
txtResult.Text = "1";
}
/// <summary>
/// 2
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn2_Click(object sender, EventArgs e)
{
if (c == true)
{
txtResult.Text = "";
c = false;
}
txtResult.Text = "2";
}
/// <summary>
/// 3
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn3_Click(object sender, EventArgs e)
{
if (c == true)
{
txtResult.Text = "";
c = false;
}
txtResult.Text = "3";
}
/// <summary>
/// *
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnCheng_Click(object sender, EventArgs e)
{
c = true;
b = double.Parse(txtResult.Text);
d = "*";
}
/// <summary>
/// 0
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn0_Click(object sender, EventArgs e)
{
if (c == true)
{
txtResult.Text = "";
c = false;
}
//txtResult.Text = "0";
//if (d == "/")
//{
// txtResult.Clear();
// MessageBox.Show("除数不能为零", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
//}
try
{
txtResult.Text = "0";
}
//catch (DivideByZeroException)
//{
// MessageBox.Show("除数不能为零", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
//}
catch (DivideByZeroException)
{
Console.WriteLine("除数不能为零");
}
//catch (Exception e)
//{
// Console.WriteLine(e.Message);
//}
Console.WriteLine(txtResult.ToString());
}
/// <summary>
/// 00
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn00_Click(object sender, EventArgs e)
{
if (c == true)
{
txtResult.Text = "";
c = false;
}
txtResult.Text = "00";
}
/// <summary>
/// =
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnResult_Click(object sender, EventArgs e)
{
switch (d)
{
case " ": a = b double.Parse(txtResult.Text); break;
case "-": a = b - double.Parse(txtResult.Text); break;
case "*": a = b * double.Parse(txtResult.Text); break;
case "/": a = b / double.Parse(txtResult.Text); break;
case "x2": a = b * double.Parse(txtResult.Text); break;
case "sqrt": a = Math.Sqrt(b); break;
case "log": a = Math.Log(double.Parse(txtResult.Text), b); break;
case "ln": a = Math.Log(b, Math.E); break;
}
txtResult.Text = a "";
c = true;
}
/// <summary>
/// /
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnChu_Click(object sender, EventArgs e)
{
c = true;
b = double.Parse(txtResult.Text);
d = "/";
}
/// <summary>
/// .
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnDian_Click(object sender, EventArgs e)
{
if (c == true)
{
txtResult.Text = "";
c = false;
}
txtResult.Text = ".";
}
/// <summary>
/// C(清空)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnC_Click(object sender, EventArgs e)
{
txtResult.Text = "";
}
/// <summary>
/// ln
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnLn_Click(object sender, EventArgs e)
{
if (txtResult.Text == "")
{
MessageBox.Show("文本框内不存在数值,不可计算 Ln 值");
return;
}
else if (txtResult.Text == ".")
{
MessageBox.Show("文本框内数值不正确,不可计算 Ln 值");
return;
}
else
{
c = true;
b = double.Parse(txtResult.Text);
d = "Ln";
}
}
/// <summary>
/// back
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnBack_Click(object sender, EventArgs e)
{
string msg = txtResult.Text;
if (msg.Length > 0)
{
txtResult.Text = msg.Substring(0, msg.Length - 1);//每点击一下Back按钮,后退一步(即每点击一下 Back 按钮,文本内容清空一次最后一位数值)
}
else
{
MessageBox.Show("文本框内不存在数值,不需再执行清除字符");
return;
}
}
}
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论