这篇文章主要为大家详细介绍了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#实现计算器窗体程序
基础教程推荐
猜你喜欢
- C# 调用WebService的方法 2023-03-09
- ZooKeeper的安装及部署教程 2023-01-22
- C#控制台实现飞行棋小游戏 2023-04-22
- linux – 如何在Debian Jessie中安装dotnet core sdk 2023-09-26
- C# windows语音识别与朗读实例 2023-04-27
- C# List实现行转列的通用方案 2022-11-02
- 一个读写csv文件的C#类 2022-11-06
- C#类和结构详解 2023-05-30
- unity实现动态排行榜 2023-04-27
- winform把Office转成PDF文件 2023-06-14