C#怎么实现计算器功能
发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,今天小编给大家分享一下C#怎么实现计算器功能的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一
千家信息网最后更新 2025年02月02日C#怎么实现计算器功能
今天小编给大家分享一下C#怎么实现计算器功能的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
代码:
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;namespace MyPictureDownloader{ //http://blog.sina.com.cn/s/blog_60d576800100tf5z.html //http://jingyan.baidu.com/article/380abd0a6b80701d90192cde.html public partial class JiSuanQi : Form { public JiSuanQi() { InitializeComponent(); initButton(); } public delegate double Operater(double num1, double num2); public void initButton() { var p = new Point(20, 80); Button[] listbtn = new Button[9]; for (int i = 0; i < 9; i++) { listbtn[i] = new Button(); listbtn[i].Name = "btn" + (i + 1).ToString(); listbtn[i].Text = (i+1).ToString(); listbtn[i].SetBounds(p.X, p.Y, 50, 50); listbtn[i].Click+= new System.EventHandler(ClickHandler); this.Controls.Add(listbtn[i]); p.X += 80; if (p.X >= this.Width - 80) { p.X =20; p.Y += 60; } } } public void ClickHandler(Object sender, System.EventArgs e) { Button btn = (Button)sender; string temp=txtnum.Text.ToString()+btn.Text;//这样解决了重复点击赋值问题 txtnum.Text = temp; } private void btnzero_Click(object sender, EventArgs e) { string temp = txtnum.Text.ToString() + btnzero.Text;//这样解决了重复点击赋值问题 txtnum.Text = temp; } public double jisuan(string caozuofu, Operater fanga) { double num2 = double.Parse(txtnum.Text); double jieguo = 0; //switch(caozuofu){ // case"+": // jieguo = fanga(tempnum, num2); // break; // case "-": // jieguo = fanga(tempnum, num2); // break; // case "*": // jieguo = fanga(tempnum, num2); // break; // case "/": // jieguo = fanga(tempnum, num2); // break; //} jieguo = fanga(tempnum, num2); return jieguo; } public double add(double num1, double num2) { return num1 + num2; } public double jian(double num1, double num2) { return num1- num2; } public double cheng(double num1, double num2) { return num1 * num2; } public double chu(double num1, double num2) { double result = 0; if (num2!=0) { result= num1 / num2; } return result; } public double tempnum = 0; public string caozuofu = ""; public event Operater fangfa; private void btnresult_Click(object sender, EventArgs e) { txtnum.Text = jisuan(caozuofu, fangfa).ToString(); } private void btnadd_Click(object sender, EventArgs e) { tempnum = double.Parse(txtnum.Text); caozuofu = btnadd.Text; txtnum.Text = ""; fangfa = add; } private void btnde_Click(object sender, EventArgs e) { tempnum = double.Parse(txtnum.Text); caozuofu = btnde.Text; txtnum.Text = ""; fangfa = jian; } private void btncheng_Click(object sender, EventArgs e) { tempnum = double.Parse(txtnum.Text); caozuofu = btncheng.Text; txtnum.Text = ""; fangfa = cheng; } private void btnchu_Click(object sender, EventArgs e) { tempnum = double.Parse(txtnum.Text); caozuofu = btnchu.Text; txtnum.Text = ""; fangfa = chu; } private void btndian_Click(object sender, EventArgs e) { if (txtnum.Text.ToString()=="") { txtnum.Text = "0"; } string temp=""; if (txtnum.Text.ToString().IndexOf(".") > 0)//解决只能包含一个小数点 { temp = txtnum.Text.ToString(); } else { temp = txtnum.Text.ToString() + btndian.Text;//这样解决了重复点击赋值问题 } txtnum.Text = temp; } }}
初始界面:
运行后的界面:
几个数字按钮是动态生成的,这就是我想要做的计算器。
以上就是"C#怎么实现计算器功能"这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注行业资讯频道。
知识
篇文章
计算器
问题
功能
C#
内容
就是
界面
不同
很大
代码
动态
大部分
小数
小数点
按钮
数字
更多
知识点
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
软件开发能否申请专利
四川星天地网络安全怎么样
软件开发辞退补偿
全威互联网信息科技有限公司
服务器禁止国外ip
服务器每日关机确认表
一台电脑怎么管理多个服务器
关闭开机显示服务器管理器
如何获取本地数据库地址
魔王him解说的服务器
软件开发中国市场
横琴网络安全
数据库基础知识实例
bak数据库恢复
软件开发培训 就搜大计学校
煤矿开采掘进面开采数据库标准
金山区海航软件开发有哪些
nb-iot服务器搭建
查找某数据库中所有的字段
金蝶怎么查看服务器地址
网络安全教育如何措施
软件开发网络直播平台
网络ip 数据库无法绑定
无锡恒隆网络技术有限公司
深信服企业级云服务器
上海软件开发税务筹划怎么做
网络安全的个人体会
京东自动评价软件开发
如何创建数据库步骤
带数据库的网站怎么建