第02讲简易计算器的设计_第1页
第02讲简易计算器的设计_第2页
第02讲简易计算器的设计_第3页
第02讲简易计算器的设计_第4页
第02讲简易计算器的设计_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第 02 讲 计算器2.1 计算器简介大家都知道,计算器是日常生活中不可缺少的一个工具,在 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 窗体和各控件的属性控件类型 控件名称 属性 设置结果Text 计算器StartPosition CenterScreenMaximizeBox FalseForm Form1AutoSizeMode GrowAndShrinkName txtReadoutTextBox TextBox1ReadOnly TrueName btnNum7Button1Text 7ButtonButton2 Name btnNum8Text 8Name btnNum9Button3Text 9Name btnAddText +Button4ForeColor RedName btnSubText -Button5ForeColor RedName btnNum4Button6Text 4Name btnNum5Button7Text 5Name btnNum6Button8Text 6Name btnMulText *Button9ForeColor RedName btnDivText /Button10ForeColor RedName btnNum1Button11Text 1Name btnNum2Button12Text 2Name btnNum3Button13Text 3Name btnNum0Button14Text 0Name btnDotButton15Text .Name btnCText CButton16ForeColor RedName btnAmountText =Button17ForeColor Red2.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;elseif (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”!“;elseresult = num1 / num2;txtReadout.Text = result.ToString();break;/*/*2.4 运行结果运行程序,计算加法“23 + 1.8” ,结果如图 2-4 所示。图 2-4 加法运算单击【C】按钮,再计算减法 “2.3 - 18”,结果如图 2-5 所示。图 2-5 减法运算单击【C】按钮,再计算乘法 “2.3 1.8”,结果如图 2-6 所示。图 2-6 乘法运算单击【C】按钮,再计算除法 “23.18 0”,结果如图 2-7 所示。图 2-7 除数为 “0”的除法运算单击【C】按钮,再计算除法 “2.3 1.8”,结果如图 2-8 所示。图 2-8 除法运算作业 2一、选择题1. 若要使窗体在运行时,用户不可以使用鼠标托拽窗体边缘的方法来改变窗体的大小,应当将窗体的(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论