c#设计一个简单的四则计算器

作者在 2020-03-02 17:57:04 发布以下内容



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;

using System.IO;

using System.Threading;

using System.Diagnostics;/*表示 Windows NT 性能计数器组件。 */

 

 

 

 

 

namespace WindowsForms测试

{

    public partial class Form1 : Form

    {

        public Form1()

        {

            InitializeComponent();

        }

 

        private void Form1_Load(object sender, EventArgs e)

        {

            Stopwatch 总运行时间 = Stopwatch.StartNew();

 

            int 数 = 5;

            /*设计一个简单的四则计算器*/

            string[] 名称 = { "+", "-", "*", "/", "运算" };

            Button[] 控件组 = Array.ConvertAll(名称, 控件 => new Button());

            EventHandler[] 按钮事件 = new EventHandler[] { 按钮加_Click, 按钮减_Click, 按钮乘_Click, 按钮除_Click, 运算_Click };

            ImageList 图标集 = new ImageList();

            图标集.Images.Add(Image.FromFile(System.Environment.CurrentDirectory + @"\熊猫.bmp")); 

            foreach (Button 按钮 in 控件组)

            {

                按钮.Text = 名称[--数];

                按钮.Name = "按钮" + 数.ToString();

                按钮.Parent = this;

                按钮.Anchor = (AnchorStyles.Top | AnchorStyles.Left);

                按钮.Location = new Point(100 * 数, 22);

                按钮.Click += 按钮事件[数];

                按钮.BackgroundImage = 图标集.Images[0];

            }

            名称 = new string[] { "值1", "值2", "运算", "结果" };

            TextBox[] 数字输入框 = Array.ConvertAll(名称, 控件 => new TextBox());

            数 = 4;

            foreach (TextBox 输入框 in 数字输入框)

            {

                输入框.Text = (--数 + 10).ToString();

                输入框.Name = "输入框" + 名称[数];

                输入框.Parent = this;

                输入框.Anchor = (AnchorStyles.Top | AnchorStyles.Left);

                输入框.Location = new Point(100 * 数, 0);

            }

            Control.ControlCollection 控件集 = this.Controls;

            foreach (Button 按钮 in 控件集) 按钮.BackgroundImage = 图标集.Images[0];

            MessageBox.Show("总运行时间: " + 总运行时间.ElapsedMilliseconds.ToString("000000sm"));

        }

 

        void 按钮加_Click(object sender, EventArgs e)

        {

            四则运算("+");

        }

        void 按钮减_Click(object sender, EventArgs e)

        {

            四则运算("-");

        }

        void 按钮乘_Click(object sender, EventArgs e)

        {

            四则运算("*");

        }

        void 按钮除_Click(object sender, EventArgs e)

        {

            四则运算("/");

        }

        void 运算_Click(object sender, EventArgs e)

        {

            四则运算(this.Controls[9].Text);

        }

        void 四则运算(string 运算符)

        {

            Control.ControlCollection 文本框 = this.Controls;

            double 值1 = double.Parse(文本框[11].Text), 值2 = Convert.ToDouble(文本框[10].Text);

            switch(运算符)

            {

                case "+":

                    { 文本框[8].Text = (值1 + 值2).ToString(); }

                    break;

                case "-":

                    { 文本框[8].Text = (值1 - 值2).ToString(); }

                    break;

                case "*":

                    { 文本框[8].Text = (值1 * 值2).ToString(); }

                    break;

                case "/":

                    { 文本框[8].Text = (值1 / 值2).ToString(); }

                    break;

                default:

                    break;

            }

        }

    }

}

 

默认分类 | 阅读 1522 次
文章评论,共0条
游客请输入验证码