《VB第五章过程数组计算器程序课件.ppt》由会员分享,可在线阅读,更多相关《VB第五章过程数组计算器程序课件.ppt(15页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第四章第四章数数 组组计算器程序计算器程序控件数组控件数组作用:作用:如果一组控件的如果一组控件的功能和外观功能和外观都很类似(属于都很类似(属于同一类),则可以采用控件数组的方法来处理。同一类),则可以采用控件数组的方法来处理。好处:好处:1. 控件数组可以共享代码,避免重复编写代码,控件数组可以共享代码,避免重复编写代码,同时提高程序的质量。同时提高程序的质量。2. 把对数据的操作定义成数组是结构化把对数据的操作定义成数组是结构化 程序设程序设计计 的特点之一。的特点之一。应用控件数组应用控件数组按钮按照功能分成三类:按钮按照功能分成三类: 数字按钮(数字按钮(09,小数点,小数点.) 运
2、算符按钮(运算符按钮(+、-、*、/、%、1/x、sqrt、=、+/-)a) 其他按钮(退格、清零、退出)其他按钮(退格、清零、退出)第一步:在窗体上创建所需要第一步:在窗体上创建所需要的控件:的控件: 数字按钮控件数组数字按钮控件数组 num(0)num(10) 运算符按钮控件数组运算符按钮控件数组 oper(0)oper(7) 其他按钮其他按钮 文本框文本框第二步:定义所需要的变量第二步:定义所需要的变量记录两个运算数记录两个运算数Dim num1, num2 As Double 记录运算结果记录运算结果Dim sum As Double 记录运算类型记录运算类型Dim ope As In
3、teger 区分运算数个数区分运算数个数Dim flag As Integer 为变量赋初值为变量赋初值Private Sub Form_Load() num1 = 0 num2 = 0 sum = 0 flag=0End Sub第三步:为数字按钮编写代码第三步:为数字按钮编写代码当按下数字按钮时,文本框内要显示相应的当按下数字按钮时,文本框内要显示相应的数字,因此,考虑使用数字,因此,考虑使用Select Case语句。语句。Private Sub num_Click(Index As Integer) Select Case Index Case 0 If Text1.Text = The
4、n Text1.Text = 0 Else Text1.Text = Text1.Text + 0 End If Case 1第四步:为运算符按钮编写代码第四步:为运算符按钮编写代码当按下运算符按钮后,表示第一个运算数已当按下运算符按钮后,表示第一个运算数已经输入经输入1)首先记录第一个运算数)首先记录第一个运算数2)然后记录运算符类型)然后记录运算符类型Private Sub oper_Click(index As Integer) If Text1.Text Then num1 = CDbl(Text1.Text) 记录第一个运算记录第一个运算数数 Text1.Text = 把文本框清空,
5、为输入第把文本框清空,为输入第二个运算数作准备二个运算数作准备 ope = index 记录运算符类型记录运算符类型 If ope = 4 Then flag = 1 单目运算,只有一个运算数单目运算,只有一个运算数 End If End IfEnd Sub第五步:为等号按钮编写代码第五步:为等号按钮编写代码当按下等号按钮后,表示第二个运算数已经当按下等号按钮后,表示第二个运算数已经输入,输入,首先记录第二个运算数首先记录第二个运算数1) 然后执行运算然后执行运算Private Sub Command1_Click() If flag = 1 Then Select Case ope Case
6、 4 res = -num1 Case 5 res = Sqr(num1) Case 6 res = 1 / num1 End Select Text1.Text = Str(res) Exit Sub End If If Text1.Text Then num2 = CDbl(Text1.Text) Select Case ope Case 0 res = num1 + num2 Case 1 res = num1 - num2 Case 2 res = num1 * num2 Case 3 res = num1 / num2 Case 7 res = num1 Mod num2 End S
7、elect Text1.Text = CStr(res) End IfEnd Sub退出按钮:退出按钮:Private Sub Command4_Click() Unload MeEnd Sub第六步:为其他按钮编写代码第六步:为其他按钮编写代码清零按钮:清零按钮:Private Sub Command3_Click() Text1.Text = End Sub退格按钮:退格按钮:Private Sub Command2_Click() If Text1.Text Then Text1.Text = Left(Text1.Text, Len(Text1.Text) - 1) End IfEnd Sub第七步:完善第七步:完善在实际使用时还会有很多具体问题要解决:在实际使用时还会有很多具体问题要解决:1)除数为)除数为0时怎样处理;时怎样处理;2)双运算数只输入了一个运算数时;)双运算数只输入了一个运算数时;3)输入的数据大于所允许的范围时)输入的数据大于所允许的范围时