




已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C#程序设计 简单计算器大家都知道,计算器是日常生活中不可缺少的一个工具,在Microsoft的Windows操作系统中,附带了一个计算器程序,有标准型和科学型两种模式。Windows XP下的标准型和科学型计算器程序分别如图2-1和图2-2所示。图2-1 Windows XP下的标准型计算器图2-2 Windows XP下的科学型计算器Windows操作系统下附带的计算器程序功能相当的强大,本课我们将模仿Windows的计算器,使用Visual C# 2005开发平台开发一个功能相对简单的计算器应用程序,它能完成加、减、乘、除运算。2.2 界面设计及属性设置用户界面设计是软件开发中非常重要的一个部分,用户界面的好坏直接影响软件的质量,本节将介绍如何设计简易计算器的用户界面以及界面上各控件的属性设置。2.2.1 界面设计打开Visual Studio 2005开发工具,新建一个Windows应用程序,然后在窗体上依次放置1个TextBox和17个Button控件,如图2-1所示(设置好属性后)。图2-1 计算器用户界面2.2.2 属性设置窗体和各控件的属性设置如表2-1所示。表2-1 窗体和各控件的属性控件类型控件名称属性设置结果FormForm1Text计算器StartPositionCenterScreenMaximizeBoxFalseAutoSizeModeGrowAndShrinkTextBoxTextBox1NametxtReadoutReadOnlyTrueButtonButton1NamebtnNum7Text7Button2NamebtnNum8Text8Button3NamebtnNum9Text9Button4NamebtnAddText+ForeColorRedButton5NamebtnSubText-ForeColorRedButton6NamebtnNum4Text4Button7NamebtnNum5Text5Button8NamebtnNum6Text6Button9NamebtnMulText*ForeColorRedButton10NamebtnDivText/ForeColorRedButton11NamebtnNum1Text1Button12NamebtnNum2Text2Button13NamebtnNum3Text3Button14NamebtnNum0Text0Button15NamebtnDotText.Button16NamebtnCTextCForeColorRedButton17NamebtnAmountText=ForeColorRed2.3 编写代码本程序需要用到一些公共变量,例如用来接收操作数、运算结果,判断输入的是否为小数等,因此首先在代码的通用段声明以下变量:/*double num1, num2, result; / 操作数及运算结果bool decimalFlag = false; / 判断输入的是否为小数string myOperator; / 操作类型/*接下来编写一个名为“NumClick”的方法,单击数字按钮时,调用NumClick方法,将输入的数字追加到文本框中,代码如下:/*/ 单击数字按钮时,调用如下NumClick方法/*public void NumClick(int myNumber) if (decimalFlag) / 输入小数 txtReadout.Text = txtReadout.Text + myNumber; else if (txtReadout.Text = 0.) / 输入整数 / 输入的是整数的第一个数字 txtReadout.Text = myNumber + .; else / 输入的不是整数的第一个数字 txtReadout.Text = txtReadout.Text.Substring (0, txtReadout.Text.Length - 1) + myNumber + .; /*编写窗体的载入事件代码如下:/*/ 窗体载入事件代码/*private void Form1_Load(object sender, EventArgs e) txtReadout.Text = 0.; / 指定文本框的对齐方式为右对齐 txtReadout.TextAlign = HorizontalAlignment.Right;/*/*编写数字按钮【0】【9】的单击事件代码如下:/*/ 数字按钮【0】【9】的单击事件代码/*private void btnNum0_Click(object sender, EventArgs e) NumClick(0);private void btnNum1_Click(object sender, EventArgs e) NumClick(1);private void btnNum2_Click(object sender, EventArgs e) NumClick(2);private void btnNum3_Click(object sender, EventArgs e) NumClick(3);private void btnNum4_Click(object sender, EventArgs e) NumClick(4);private void btnNum5_Click(object sender, EventArgs e) NumClick(5);private void btnNum6_Click(object sender, EventArgs e) NumClick(6);private void btnNum7_Click(object sender, EventArgs e) NumClick(7);private void btnNum8_Click(object sender, EventArgs e) NumClick(8);private void btnNum9_Click(object sender, EventArgs e) NumClick(9);/*/*编写小数点按钮【.】的单击事件代码如下:/*/ 【.】按钮的单击事件代码/*private void btnDot_Click(object sender, EventArgs e) decimalFlag = true; / 输入小数点/*/*编写复位按钮【C】的单击事件代码如下:/*/ 【C】按钮的单击事件代码/*private void btnC_Click(object sender, EventArgs e) num1 = 0; num2 = 0; txtReadout.Text = 0.; decimalFlag = false;/*/*编写【+】、【-】、【*】、【/】按钮的单击事件代码如下:/*/ 【+】、【-】、【*】、【/】按钮的单击事件代码/*private void btnAdd_Click(object sender, EventArgs e) myOperator = add; num1 = double.Parse(txtReadout.Text); txtReadout.Text = 0.; decimalFlag = false;private void btnSub_Click(object sender, EventArgs e) myOperator = Sub; num1 = double.Parse(txtReadout.Text); txtReadout.Text = 0.; decimalFlag = false;private void btnMul_Click(object sender, EventArgs e) myOperator = Mul; num1 = double.Parse(txtReadout.Text); txtReadout.Text = 0.; decimalFlag = false;private void btnDiv_Click(object sender, EventArgs e) myOperator = Div; num1 = double.Parse(txtReadout.Text); txtReadout.Text = 0.; decimalFlag = false;/*/*最后编写【=】按钮的单击事件代码如下:/*/ 【=】按钮的单击事件代码/*private void btnAmount_Click(object sender, EventArgs e) num2 = double.Parse(txtReadout.Text); switch (myOperator) case add: result = num1 + num2; txtReadout.Text = result.ToString(); break; case Sub: result = num1 - num2; txtReadout.Text = result.ToString(); break; case Mul: result = num1 * num2; txtReadout.Text = result.ToString(); break; case Div: if (num2 = 0) txtReadout.Text = 除数不能为“0”!; else result = num1 / num2; txtReadout.Text = result.ToString(); break; /*/*2.4 运行结果运行程序,计算加法“23 + 1.8”,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025春季中国电气装备平高集团、平高电气校园招聘考前自测高频考点模拟试题及一套完整答案详解
- 2025国家应急管理部所属单位第二批次招聘1人模拟试卷及答案详解(历年真题)
- 涂料墨水知识培训内容课件
- 2025广东珠海市香洲区招聘卫生健康系统事业单位工作人员10人模拟试卷及完整答案详解1套
- 2025江苏苏州市轨道交通集团有限公司专业化青年人才定岗特选人员考前自测高频考点模拟试题及1套完整答案详解
- 2025春季黑龙江哈尔滨“丁香人才周”尚志市事业单位引才招聘98人考前自测高频考点模拟试题及1套完整答案详解
- 2025年4月第二批永州市本级就业见习岗位招聘14人模拟试卷及一套完整答案详解
- 安全培训职业病管理课件
- 安全培训耳塞的作用
- 2025江苏苏州工业园区东沙湖小学后勤辅助人员招聘模拟试卷及1套完整答案详解
- 镇墩稳定计算
- 2023-2024学年辽宁省沈阳市郊联体高二上学期10月月考物理试题(解析版)
- 《大学生军事理论教程》第五章
- 中国建筑色卡
- 北师大九年级物理上册 (组装电路)简单电路 课件
- 2023年普通高中学业水平合格性考试音乐试卷
- 第八章世纪美国政治思想
- 起重机司机Q2(限桥式起重机)题库题库(1727道)
- 冠寓运营管理手册正式版
- GB/T 18839.2-2002涂覆涂料前钢材表面处理表面处理方法磨料喷射清理
- GB/T 12814-2002铁道车辆用车轴型式与基本尺寸
评论
0/150
提交评论