- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实战项目--用winform动手写一个“计算器”
实战项目旨在交流学习,欢迎在评论区交流意见。
简介:分享一个简单的软件项目自己动手写一个“计算器”。
先展示效果:
项目开发环境: Visual Studio 2017 winform 开发
开发语言: C#
demo功能: Windows 窗体程序实现计算器功能
PS :其他版本的VS开发步骤基本一样
首先,打开Visual Sdudio ,新建一个winform工程
左上角:文件 - 新建 - 项目
选择Visual C# 的 Windows窗体应用(.NET Framework),名称位置自己设定即可
然后点击确定
接着弹出的窗体设计界面就可以用来进行程序界面设计了:
在左侧工具箱中,拖出需要的按钮,改变其大小和显示标签,如下图所示
这里设定了0~9的数字按键,加减乘除的基本运算按键还有“=”号和清除键“C” ,这里按照个人实际需求
设计即可,此例只是示范。
然后拖入一个TextBox控件,调整大小和整体布局,使得界面看起开相对规范:
PS :TextBox的属性栏里面,应当将字体改大,以便显示,显示顺序应改为RightToLeft
功能布局颜色等按照自己的需求做一下调整,界面就搞定了
下面代码实现功能:
表示最终结果,中间结果的值的变量在开头先定义清楚,然后后面在每个按键的触发事件中填入内容即
可。
感觉挺简单的算法,自己写的时候还是费了些脑经,多次修改测试后,圆满实现效果。
至此项目介绍完毕,项目中的数学计算还是挺有意思的
下面上源码:
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 calculator
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
double Value = 0;//最终值
double value = 0;//中间值
int[] number = new int[10]; //设定输入数据位数不超过10位
int K = 0;//位数
int flag = 0;//0:加 1 :减 2 :乘 3 :除
private void button0_Click(object sender, EventArgs e)
{
value = 0;//清空中间值
number[K] = 0;
K++;//位数增加
for (int i = 0; i K; i++)
{
value += number[i] * System.Math.Pow(10, K - i - 1);//乘方:10的K次方
}
// Value = Value + value;
textBox1.Text = value.ToString();//显示
}
private void button1_Click(object sender, EventArgs e)
{
value = 0;//清空中间值
number[K] = 1;
K++;//位数增加
for (int i = 0; i K; i++)
{
value += number[i] * System.Math.Pow(10, K - i-1);//乘方:10的K次方
}
// Value = Value + value;
textBox1.Text = value.ToString();//显示
}
private void button2_Click(object sender, EventArgs e)
{
value = 0;//清空中间值
number[K] = 2;
K++;//位数增加
for (int i = 0; i K; i++)
{
value += number[i] * System.Math.Pow(10, K - i - 1);//乘方:10的K次方
}
// Value = Value + value;
textBox1.Text = value.ToString();//显示
}
private void butto
您可能关注的文档
最近下载
- 急性胰腺炎护理查房课件(完整版).pptx VIP
- 如何做合格的研究生导师.ppt VIP
- GB50084-2001(2005版)自动喷水灭火系统设计规范.docx VIP
- 绿色“垃圾不落地城市更美丽”节能环保树立垃圾分类新观念PPT模板课件.pptx VIP
- 铁路栅栏改移重点项目施工专项方案.doc
- ApacheCN 编程/大数据/数据科学/人工智能学习资源 2019.8.pdf VIP
- 精品解析:北京市八中2023-2024学年九年级上学期期中考试物理试题(解析版).docx VIP
- 大数据互联网科技PPT模板 .pptx VIP
- (人教版)九年级英语第一次月考试卷(含答案).pdf VIP
- 隐球菌性脑膜炎护理.pptx VIP
文档评论(0)