你能不能帮我解释哈下面这段VB计算器代码具体每句是什么意思吗?谢谢

2025-04-01 07:46:54
推荐回答(1个)
回答1:

  Dim a As String '定义a为字符串型,储存“+”或“-”或“*”或“/”
  Dim b As String '定义b为字符串型,储存 两数运算 的 前数
  Dim c As Integer '定义c为整型,确保输入的数字不会0开头

  Private Sub Command1_Click() '退出按钮
  End
  End Sub

  '----------------------------------
  ' 以下是 “+”“-”“*”“/”按钮,代码雷同
  '----------------------------------
  Private Sub Command10_Click()
  If a = "" Then '如果 a 为空
  b = Text1.Text 'b 储存 Text1 输入的数
  Text1.Text = "" '清空 Text1,以便输入下个数
  a = Command10.Caption ' a = 按钮的标题
  End If
  End Sub

  Private Sub Command14_Click()
  If a = "" Then
  b = Text1.Text
  Text1.Text = ""
  a = Command14.Caption
  End If
  End Sub

  Private Sub Command6_Click()
  If a = "" Then
  b = Text1.Text
  Text1.Text = ""
  a = Command6.Caption
  End If
  End Sub

  Private Sub Command18_Click()
  If a = "" Then
  b = Text1.Text
  Text1.Text = ""
  a = Command18.Caption
  End If
  End Sub

  '“=” 按钮
  Private Sub Command17_Click()
  If a <> "" Then '如果 a 不为空,就做如下判断
  Select Case a
  Case "/" '如果 a = "/",除运算
  If Val(Text1.Text) <> 0 Then '如果除数不为0
  valu = Val(b) / (Val(Text1.Text)) '前数 除 后数
  Else
  End If
  Case "*" '如果 a = "*",乘运算
  valu = Val(b) * (Val(Text1.Text)) '前数 乘 后数
  Case "+"
  valu = Val(b) + (Val(Text1.Text))
  Case "-"
  valu = Val(b) - (Val(Text1.Text))
  End Select
  End If
  Text1.Text = Str$(valu) '显示计算结果
  c = -1 'c 回复状态
  a = "" '清空 a 以便下次运算
  End Sub

  '“清除”按钮
  Private Sub Command2_Click()
  Text1.Text = "" '清空 Text1
  End Sub

  '----------------------------------
  ' 以下是 “0”-“9”按钮,代码雷同
  '----------------------------------
  Private Sub Command3_Click()
  '如果 Text1 = 0 或 c = -1,清空 Text1, c = 7
  If Text1.Text = "0" Or c = -1 _
  Then Text1.Text = "": c = 7
  'Text1 = Text1 原来的数后面加上按钮的标题
  Text1.Text = Text1.Text + Command3.Caption
  End Sub

  Private Sub Command4_Click()
  If Text1.Text = "0" Or c = -1 _
  Then Text1.Text = "": c = 8
  Text1.Text = Text1.Text + Command4.Caption
  End Sub

  Private Sub Command5_Click()
  If Text1.Text = "0" Or c = -1 _
  Then Text1.Text = "": c = 9
  Text1.Text = Text1.Text + Command5.Caption
  End Sub
  Private Sub Command7_Click()
  If Text1.Text = "0" Or c = -1 _
  Then Text1.Text = "": c = 4
  Text1.Text = Text1.Text + Command7.Caption
  End Sub

  Private Sub Command8_Click()
  If Text1.Text = "0" Or c = -1 _
  Then Text1.Text = "": c = 5
  Text1.Text = Text1.Text + Command8.Caption
  End Sub

  Private Sub Command9_Click()
  If Text1.Text = "0" Or c = -1 _
  Then Text1.Text = "": c = 6
  Text1.Text = Text1.Text + Command9.Caption
  End Sub

  Private Sub Command11_Click()
  If Text1.Text = "0" Or c = -1 _
  Then Text1.Text = " ": c = 1
  Text1.Text = Text1.Text + Command11.Caption
  End Sub

  Private Sub Command12_Click()
  If Text1.Text = "0" Or c = -1 _
  Then Text1.Text = " ": c = 2
  Text1.Text = Text1.Text + Command12.Caption
  End Sub

  Private Sub Command13_Click()
  If Text1.Text = "0" Or c = -1 _
  Then Text1.Text = " ": c = 3
  Text1.Text = Text1.Text + Command13.Caption
  End Sub

  Private Sub Command15_Click()
  If Text1.Text = "0" Or c = -1 _
  Then Text1.Text = "": c = 0
  Text1.Text = Text1.Text + Command15.Caption
  End Sub