buaishi 发表于 2020-7-29 16:50

简单的计算器···c#Windows窗体应用

只实现了简单的+-*/,而且不能键盘输入
代码不是原创,但是是我一步一步敲出来的,特别容易理解,适合初期小白学习(我也是初期小白一枚)。
大佬们如果有优化的方法可以说出来,供我和其他小白学习。

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 lxjsq
{
    public partial class Form1 : Form
    {
      double a = 0;
      double b = 0;
      bool c = false;
      string d;
      public Form1()
      {
            InitializeComponent();
      }

      private void Form1_Load(object sender, EventArgs e)
      {

      }
      private void button9_Click(object sender, EventArgs e)
      {
            if(c==true)
            {
                textBox1.Text = "";
                c = false;
            }textBox1.Text += 1;
      }

      private void textBox1_TextChanged(object sender, EventArgs e)
      {

      }

      private void button10_Click(object sender, EventArgs e)
      {
            if (c == true)
            {
                textBox1.Text = "";
                c = false;
            }
            textBox1.Text += 2;
      }

      private void button11_Click(object sender, EventArgs e)
      {
            if (c == true)
            {
                textBox1.Text = "";
                c = false;
            }
            textBox1.Text += 3;
      }

      private void button5_Click(object sender, EventArgs e)
      {
            if (c == true)
            {
                textBox1.Text = "";
                c = false;
            }
            textBox1.Text += 4;
      }

      private void button6_Click(object sender, EventArgs e)
      {
            if (c == true)
            {
                textBox1.Text = "";
                c = false;
            }
            textBox1.Text += 5;
      }

      private void button7_Click(object sender, EventArgs e)
      {
            if (c == true)
            {
                textBox1.Text = "";
                c = false;
            }
            textBox1.Text += 6;
      }

      private void button1_Click(object sender, EventArgs e)
      {
            if (c == true)
            {
                textBox1.Text = "";
                c = false;
            }
            textBox1.Text += 7;
      }

      private void button2_Click(object sender, EventArgs e)
      {
            if (c == true)
            {
                textBox1.Text = "";
                c = false;
            }
            textBox1.Text += 8;
      }

      private void button3_Click(object sender, EventArgs e)
      {
            if (c == true)
            {
                textBox1.Text = "";
                c = false;
            }
            textBox1.Text += 9;
      }

      private void button13_Click(object sender, EventArgs e)
      {
            if (c == true)
            {
                textBox1.Text = "";
                c = false;
            }
            textBox1.Text += 0;
            if (d == "/")
            {
                textBox1.Clear();
                MessageBox.Show("除数不能为零", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
      }

      private void button4_Click(object sender, EventArgs e)
      {
            if (textBox1.Text == "")
            {
                MessageBox.Show("请先输入值再计算!", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else
            {
                c = true; b = double.Parse(textBox1.Text);
                d = "+";
            }
      }

      private void button8_Click(object sender, EventArgs e)
      {
            if (textBox1.Text == "") { MessageBox.Show("请先输入值再计算!", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); }
            else
            {
                c = true; b = double.Parse(textBox1.Text);
                d = "-";
            }
      }

      private void button12_Click(object sender, EventArgs e)
      {
            if (textBox1.Text == "") { MessageBox.Show("请先输入值再计算!", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); }
            else
            {
                c = true; b = double.Parse(textBox1.Text);
                d = "*";
            }
      }

      private void button16_Click(object sender, EventArgs e)
      {
            if (textBox1.Text == "") { MessageBox.Show("请先输入值再计算!", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); }
            else
            {
                c = true; b = double.Parse(textBox1.Text);
                d = "/";
            }
      }

      private void button14_Click(object sender, EventArgs e)
      {
            switch (d)
            {
                case "+":a = b + double.Parse(textBox1.Text);break;
                case "-": a = b - double.Parse(textBox1.Text); break;
                case "*": a = b * double.Parse(textBox1.Text); break;
                case "/": a = b / double.Parse(textBox1.Text); break;
            }textBox1.Text = a + "";
            c = true;
      }

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

woodyupc 发表于 2020-12-3 21:31

谢谢分享,这对我很有用

朕灬临幸天下 发表于 2020-12-9 16:08

本帖最后由 朕灬临幸天下 于 2020-12-9 16:09 编辑

大佬 做一个类似这样的软件有多难啊


就是输入客单价和销量 自动计算出优惠金额和优惠后客单价

每次要打开Excel 实在是太麻烦了 可是我不懂编程 不知道做一个这样的软件 要多久

sweet_love 发表于 2020-12-9 16:56

朕灬临幸天下 发表于 2020-12-9 16:08
大佬 做一个类似这样的软件有多难啊




分分钟的事儿。

朕灬临幸天下 发表于 2020-12-9 17:49

sweet_love 发表于 2020-12-9 16:56
分分钟的事儿。

大佬求帮助啊

tooo 发表于 2020-12-13 20:16

打开excel嫌麻烦,估计新做一个软件,也会嫌麻烦。
页: [1]
查看完整版本: 简单的计算器···c#Windows窗体应用