"Reset" 一个 For on visual basic

"Reset" a For on visual basic

对于一个项目,我需要创建一个小游戏,但我要发疯了

我的代码如下:

Public Sub Play(ByVal i As Integer, ByVal t() as Integer)

Dim n As Integer
t(i) = n

For i = 0 to 13

While n > 0
t(i + 1) = t(i + 1) + 1
n = n - 1
End While

If i + 1 > 13 Then
i = 0
End If

Next i

所以,我有14个按钮,每个按钮都有一个数字X,当我点击一个按钮时,他必须重置为0,并在它之后的X按钮上添加1。但是当我尝试我的 Public Sub 时,我的应用程序冻结了所以我想我有问题......

这是你的问题:

If i + 1 > 13 Then
  i = 0
End If

这将在最后一个循环 (i=13) 中始终将 i 设置为 0,这就是无限循环的原因。