vb 随机生成

来源:百度知道 编辑:UC知道 时间:2024/06/05 04:20:19
txt1 ,txt2 , cmdok

要求随机生成大小写字母与数字

cmdok_click txt1显示随机生成的字符(1个) 例如是随机生成小写的 a

这时候 在txt2 输入 小写的 a 则 txt1 又换了一个随机生成的字符

如果写错了,写成了 b 则清空内容 (也就是输对了继续,输错了重输)

如此循环20次 程序结束 (也就是说随机生成20个字符,都写正确后,程序结束。)
好像有点错误?

Dim nCount As Integer
Private Sub cmdOK_Click()
txt1.Text = RndChr
nCount = nCount + 1
End Sub

Function RndChr() As String
Dim s As String, i As Integer
For i = 0 To 9
s = s & Chr(Asc("0") + i)
Next
For i = 0 To 25
s = s & Chr(Asc("A") + i) & Chr(Asc("a") + i)
Next
Randomize
RndChr = Mid(s, Int(Rnd * Len(s)) + 1, 1)
End Function

Private Sub txt2_KeyPress(KeyAscii As Integer)
If KeyAscii = Asc(txt1.Text) Then
If nCount < 20 Then
cmdOK.Value = True
KeyAscii = 0
Else
nCount = 0
End If
Else
KeyAscii = 0
End If
End Sub
上面的代码我运行测试过,没有问题呀,不知道你在哪儿遇到错误