好学IT学院:IT信息技术分享交流平台
标签:VB  来源:互联网  作者:佚名  发布时间:2009-05-19  ★★★加入收藏〗〖手机版
摘要:从本章开始我们将正式进入VB的编程世界,但这还仅仅是个开端,要编出功能强大的软件,还要学很多东西,那就要看以后的VB高级教程了,我也得努力学啊!…

别看这个东西小,还费了近我两个小时呢,不觉大叹手生,里面也有些地方很绕弯子,我尽量解释清楚。

在编写程序之前,我们先来回顾一下计算器的使用。

按下数字键在液晶屏上会出现数字,这是最基本的功能。

第一次按下运算键,再按下数字键,将重新输入第二个数字,再次按下运算键,将算出前两个数的结果,然后按下数字键,将又重新输入新的数字。

输入数字后,按下“等于键”将仍输出原来的数字,输入运算符和第二个数字后在按下“等于”,将得到二者的结果。然后又重复第二、三步。

按下“清除”,数据被全部清除。

了解了这些,我们一步一步实现。

先实现数据的输入,请看代码。

与未创立组的控件相比,它的事件里多了Index参数,组里所有的对象都使用同一个事件。

先在General里声明窗体级全局变量:

Dim Num1, Num2 As Single
  Dim StrNum1, StrNum2 As String
  Dim FirstNum As Boolean '判断是否是数字开头

因为Text1里是存放字符串的,所以要把输入的数据进行运算,必须把字符型变量转变为实型变量,分别用Num1、Num2和StrNum1、StrNum2进行存放。

在Form_Load事件里给变量初赋值:

Num1 = 0
  Num2 = 0
  StrNum1 = ""
  StrNum2 = ""
  FirstNum = True

因为17个按钮使用的是同一事件,所以我们用一个Select Case语句区分各个按钮,双击任意按钮输入代码:

Private Sub Command1_Click(Index As Integer)
  Select Case Index
  Case 0 To 9
  If FirstNum Then
  StrNum1 = Str(Index)’实型转字符型
  FirstNum = False’初赋值为假
  Else’非初赋值
  StrNum1 = StrNum1 + Str(Index)
  End If
  Text1.Text = StrNum1’显示
  <还有其他语句,等待插入>
  End Select
  End Sub

运行程序的话已经可以输入数据,下面我们来处理小数点。

在General里声明新的变量:

Dim PointFlag As Boolean '判断是否已有小数点
  我们知道小数点只能输入一次,一个数据中不能有多个小数点存在,所以需要一个布尔变量做判断。
  在Form_Load里进行初赋值:
  PointFlag = False
  在Command的单击事件里接着上面输入新的代码:
  Case 10
  If Not PointFlag Then’如果没有小数点
  If FirstNum Then’如果是第一个字符
  StrNum1 = "0."
  FirstNum = False
  Else
  StrNum1 = StrNum1 + "."
  End If
  Else’已有小数点
  Exit Sub’则退出单击事件
  End If
  PointFlag = True
  Text1.Text = StrNum1

  • 好学触屏公众号虎力全开、杨帆起航!
  • 好学考试H5触屏版开放内测