可以点击设置订单按钮
Set order buttons can be clicked
我在表单上有三个按钮,我想根据由 3 位数字组成的不断变化的随机数来控制点击它们的顺序
只要随机数不变我就可以控制点击顺序
由于代码现在没有生成随机数
我只是把随机数改成test
我明白当点击按钮时需要的是一个有效的测试使用数组不太幸运
如何动态关联数字在String中的位置来控制按钮的点击顺序?
Private Sub btnAdd_Click()
ck = 0
GetPos
tbOne.Text = S1
End Sub
Private Sub GetPos()
Dim Y As Integer
S1 = "132" 'Random Number
For Y = 1 To Len(S1)
pos = Mid(S1, Y, 1) 'Position of Value in S1 the Random Number
lbOne.AddItem pos & vbNewLine
Next
End Sub
Private Sub btnOne_Click()
ck = ck + 1
If Mid(S1, 1, 1) = "1" And ck = 3 Then
btnOne.BackColor = vbYellow
Else
ck = 4
If btnOne.BackColor = vbYellow Then
Exit Sub
End If
btnOne.BackColor = vbRed
If btnOne.BackColor <> vbYellow Then
btnOne.Enabled = False
End If
End If
End Sub
Private Sub btnTwo_Click()
ck = ck + 1
If Mid(S1, 2, 1) = "3" And ck = 1 Then
btnTwo.BackColor = vbYellow
Else
ck = 4 ' Prevents other buttons from being Yellow
If btnTwo.BackColor = vbYellow Then
Exit Sub
End If
btnTwo.BackColor = vbRed
If btnTwo.BackColor <> vbYellow Then
btnTwo.Enabled = False
End If
End If
End Sub
Private Sub btnThree_Click()
ck = ck + 1
If Mid(S1, 3, 1) = "2" And ck = 2 Then
btnThree.BackColor = vbYellow
Else
ck = 4
If btnThree.BackColor = vbYellow Then
Exit Sub
End If
btnThree.BackColor = vbRed
If btnThree.BackColor <> vbYellow Then
btnThree.Enabled = False
End If
End If
End Sub
此代码可找到您需要的所有信息
我仍在尝试在相应的按钮点击事件中实现这些值
Private Sub btnAdd_Click()
S1 = "132"
S2 = "321"
FindPlace
tbOne.Text = S1
End Sub
Private Sub FindPlace()
Dim Y As Integer
Dim i As Integer
tbOne.Text = S1
lbOne.Clear
For Y = 1 To Len(S2)
pos = Mid(S1, 4 - Y, 1)
S3 = Mid(S2, Y, 1)
For i = 1 To Len(S1)
If Mid(S1, i, 1) = S3 Then
lbOne.AddItem "Press " & i & " the value " & pos & " is in Position " & Mid(S1, i, 1)
End If
Next
Next
End Sub
这似乎可以满足您的需求:
Private Sub btnOne_Click()
ck = ck + 1
If ck = Mid(S1, 1, 1) Then
btnOne.BackColor = vbYellow
Else
btnOne.BackColor = vbRed
btnOne.Enabled = False
End If
End Sub
Private Sub btnTwo_Click()
ck = ck + 1
If ck = Mid(S1, 2, 1) Then
btnTwo.BackColor = vbYellow
Else
btnTwo.BackColor = vbRed
btnTwo.Enabled = False
End If
End Sub
Private Sub btnThree_Click()
ck = ck + 1
If ck = Mid(S1, 3, 1) Then
btnThree.BackColor = vbYellow
Else
btnThree.BackColor = vbRed
btnThree.Enabled = False
End If
End Sub
我在表单上有三个按钮,我想根据由 3 位数字组成的不断变化的随机数来控制点击它们的顺序
只要随机数不变我就可以控制点击顺序
由于代码现在没有生成随机数
我只是把随机数改成test
我明白当点击按钮时需要的是一个有效的测试使用数组不太幸运
如何动态关联数字在String中的位置来控制按钮的点击顺序?
Private Sub btnAdd_Click()
ck = 0
GetPos
tbOne.Text = S1
End Sub
Private Sub GetPos()
Dim Y As Integer
S1 = "132" 'Random Number
For Y = 1 To Len(S1)
pos = Mid(S1, Y, 1) 'Position of Value in S1 the Random Number
lbOne.AddItem pos & vbNewLine
Next
End Sub
Private Sub btnOne_Click()
ck = ck + 1
If Mid(S1, 1, 1) = "1" And ck = 3 Then
btnOne.BackColor = vbYellow
Else
ck = 4
If btnOne.BackColor = vbYellow Then
Exit Sub
End If
btnOne.BackColor = vbRed
If btnOne.BackColor <> vbYellow Then
btnOne.Enabled = False
End If
End If
End Sub
Private Sub btnTwo_Click()
ck = ck + 1
If Mid(S1, 2, 1) = "3" And ck = 1 Then
btnTwo.BackColor = vbYellow
Else
ck = 4 ' Prevents other buttons from being Yellow
If btnTwo.BackColor = vbYellow Then
Exit Sub
End If
btnTwo.BackColor = vbRed
If btnTwo.BackColor <> vbYellow Then
btnTwo.Enabled = False
End If
End If
End Sub
Private Sub btnThree_Click()
ck = ck + 1
If Mid(S1, 3, 1) = "2" And ck = 2 Then
btnThree.BackColor = vbYellow
Else
ck = 4
If btnThree.BackColor = vbYellow Then
Exit Sub
End If
btnThree.BackColor = vbRed
If btnThree.BackColor <> vbYellow Then
btnThree.Enabled = False
End If
End If
End Sub
此代码可找到您需要的所有信息
我仍在尝试在相应的按钮点击事件中实现这些值
Private Sub btnAdd_Click()
S1 = "132"
S2 = "321"
FindPlace
tbOne.Text = S1
End Sub
Private Sub FindPlace()
Dim Y As Integer
Dim i As Integer
tbOne.Text = S1
lbOne.Clear
For Y = 1 To Len(S2)
pos = Mid(S1, 4 - Y, 1)
S3 = Mid(S2, Y, 1)
For i = 1 To Len(S1)
If Mid(S1, i, 1) = S3 Then
lbOne.AddItem "Press " & i & " the value " & pos & " is in Position " & Mid(S1, i, 1)
End If
Next
Next
End Sub
这似乎可以满足您的需求:
Private Sub btnOne_Click()
ck = ck + 1
If ck = Mid(S1, 1, 1) Then
btnOne.BackColor = vbYellow
Else
btnOne.BackColor = vbRed
btnOne.Enabled = False
End If
End Sub
Private Sub btnTwo_Click()
ck = ck + 1
If ck = Mid(S1, 2, 1) Then
btnTwo.BackColor = vbYellow
Else
btnTwo.BackColor = vbRed
btnTwo.Enabled = False
End If
End Sub
Private Sub btnThree_Click()
ck = ck + 1
If ck = Mid(S1, 3, 1) Then
btnThree.BackColor = vbYellow
Else
btnThree.BackColor = vbRed
btnThree.Enabled = False
End If
End Sub