主题:请帮菜鸟查个错~~~
[em8]真的不知道这个程序错在哪里,请高手指点!谢谢~~~
界面如图所示,代码如下:
Private Sub Command1_Click()
Dim m As Integer, i As Integer
For i = 0 To 9
If Text1(i).Text = Str(Val(Label1(i).Caption) + Val(Label3(i).Caption)) Then m = m + 1
Next i
MsgBox "你的成绩是:" + Str(m)
End
End Sub
Private Sub Form_Activate()
Randomize
For i = 0 To 9
Label1(i).Caption = ""
Label2(i).Caption = "+"
Label3(i).Caption = ""
Label4(i).Caption = "="
Text1(i).Text = ""
Text1(i).TabIndex = i
Label1(i).Caption = Str(Int(Rnd * 90 + 10))
Label3(i).Caption = Str(Int(Rnd * 90 + 10))
Next i
End Sub
Private Sub Command2_Click()
End
End Sub
具体问题是:
运行程序后,如果在前几个文本框中无论输入结果是否正确,然后按“交卷”,则都会弹出“你的成绩是0分”。或者,有时输入的结果有两个是正确的,应该得20分才对,可弹对话框说成绩为10分....反正就是不对![em10]
感觉可能是条件表达式不对,试着将Text1(i).Text = Str(Val(Label1(i).Caption) + Val(Label3(i).Caption)) 改成了val(text1(i).text)=Val(Label1(i).Caption) + Val(Label3(i).Caption),结果还是不对![em10]
说实话,应该说在同一机房,有的机器上如果写val(text1(i).text)=Val(Label1(i).Caption) + Val(Label3(i).Caption)则能运行正确,而有的却不行。真不知道是怎么回事呀!哭~~~~~~~~~~
界面如图所示,代码如下:
Private Sub Command1_Click()
Dim m As Integer, i As Integer
For i = 0 To 9
If Text1(i).Text = Str(Val(Label1(i).Caption) + Val(Label3(i).Caption)) Then m = m + 1
Next i
MsgBox "你的成绩是:" + Str(m)
End
End Sub
Private Sub Form_Activate()
Randomize
For i = 0 To 9
Label1(i).Caption = ""
Label2(i).Caption = "+"
Label3(i).Caption = ""
Label4(i).Caption = "="
Text1(i).Text = ""
Text1(i).TabIndex = i
Label1(i).Caption = Str(Int(Rnd * 90 + 10))
Label3(i).Caption = Str(Int(Rnd * 90 + 10))
Next i
End Sub
Private Sub Command2_Click()
End
End Sub
具体问题是:
运行程序后,如果在前几个文本框中无论输入结果是否正确,然后按“交卷”,则都会弹出“你的成绩是0分”。或者,有时输入的结果有两个是正确的,应该得20分才对,可弹对话框说成绩为10分....反正就是不对![em10]
感觉可能是条件表达式不对,试着将Text1(i).Text = Str(Val(Label1(i).Caption) + Val(Label3(i).Caption)) 改成了val(text1(i).text)=Val(Label1(i).Caption) + Val(Label3(i).Caption),结果还是不对![em10]
说实话,应该说在同一机房,有的机器上如果写val(text1(i).text)=Val(Label1(i).Caption) + Val(Label3(i).Caption)则能运行正确,而有的却不行。真不知道是怎么回事呀!哭~~~~~~~~~~