求助!我是初学者,需要大家指教。
求助!
本人由于刚刚开始学习VB 6,有许多地方不明白,这不,刚刚编制的一个游戏---“猜数字”(来源于文曲星的那个猜数字游戏)就是无法成功运行。请大家帮我看看,哪里编错了??
设计思路:先加入一个command button,然后复制9个建立数组,caption分别为0--9,再加入2个command button分别的caption为"确定"和"取消"。还加入1个frame,1个list,1个lable,最后编辑菜单:新游戏、显示答案和结束。按照如此操作以后编制源代码,完成后可以编译,可是无法正常运行,就是说根本不能够像文曲星那样玩。特此求大家指正代码种的错误。
源代码如下:
Dim PcA, PcB, PcC, PcD As Integer
Dim UserA, UserB, UserC, UserD As Integer
Dim Degree As Integer
Dim Num As Integer
Private Sub Form_Load()
For i = 0 To 9
Command1(i).Enabled = False
Next i
Command2.Enabled = False
Command3.Enabled = False
View.Enabled = False
End Sub
Private Sub Newgame_click()
View.Enabled = True
List2.Clear
Degree = 0
Randomize
Num = 1
Label1.Caption = 0 & "A" & 0 & "B"
PcA = Int(9 * Rnd)
Do
PcB = Int(9 * Rnd)
Loop While PcB = PcA
Do
PcC = Int(9 * Rnd)
Loop While PcC = PcA Or PcC = PcB
Do
PcD = Int(9 * Rnd)
Loop While PcD = PcA Or PcD = PcB Or PcD = PcC
For i = 0 To 9
Command1(i).Enabled = True
Next i
Command2.Enabled = False
Command3.Enabled = True
End Sub
Private Sub Command1_click(Index As Integer)
If Num <= 4 Then
Command1(Index).Enabled = False
End If
If Num = 4 Then
Command2.Enabled = True
End If
Select Case Index
Case 0
UserEnter (0)
Case 1
Case 2
Case 3
Case 4
Case 5
Case 6
Case 7
Case 8
Case 9
End Select
End Sub
Private Sub Command2_Click()
Dim A, B As Integer
A = 0
B = 0
Degree = Degree + 1
If UserA = PcA Then
A = A + 1
ElseIf UserA = PcB Or UserA = PcC Or UserA = PcD Then
B = B + 1
End If
If UserB = PcB Then
A = A + 1
ElseIf UserB = PcA Or UserB = PcC Or UserB = PcD Then
B = B + 1
End If
If UserC = PcC Then
A = A + 1
ElseIf UserC = PcA Or UserC = PcB Or UserC = PcD Then
B = B + 1
End If
If UserD = PcD Then
A = A + 1
ElseIf UserD = PcA Or UserD = PcB Or UserD = PcC Then
B = B + 1
End If
Lable1.Caption = A & "A" & B & "B"
List2.AddItem UserA & UserB & UserC & UserC & UserD & " " & Lable1.Caption
Command2.Enabled = False
For i = 0 To 9
Command1(i).Enabled = True
Next i
Num = 1
If A = 4 Then
MsgBox "正确!" & "你一共猜了" & Degree & "次"
For i = 0 To 9
Command1(i).Enabled = False
Next i
Command2.Enabled = False
End If
End Sub
Private Sub Command3_click()
Num = 1
For i = 0 To 9
Command1(i).Enabled = Ture
Next i
Command2.Enabled = False
End Sub
Private Sub View_click()
MsgBox "答案是:" & PcA & PcB & PcC & PcD & "你答对了吗?"
End Sub
Private Sub End_Click()
Unload Me
End Sub
Sub UserEnter(i)
If Num = 1 Then
UserA = i
Num = Num + 1
ElseIf Num = 2 Then
UserB = i
Num = Num + 1
ElseIf Num = 3 Then
UserC = i
Num = Num + 1
ElseIf Num = 4 Then
UserD = i
Num = Num + 1
Else: MsgBox "只能够输入4位数!"
End If
End Sub