关于VB生成验证码的问题!!!

2025-03-10 13:14:08
推荐回答(2个)
回答1:

Case与 0之间要有空格

Private Sub Command1_Click()

  Randomize (Timer)

  y = " "

  Picture1.Cls

  For i = 1 To 4

    Picture1.FontSize = Int(Rnd * 13 + 12)

    j = Int(Rnd * 4) + 1

    If i = j Then Picture1.FontItalic = True

    k1 = Int(Rnd * 256)

    k2 = Int(Rnd * 256)

    k3 = Int(Rnd * 256)

    Picture1.ForeColor = RGB(k1, k2, k3)

    k = Int(Rnd * 3)

    Select Case k

      Case 0: a = 48: b = 57

      Case 1: a = 65: b = 90

      Case 2: a = 90: b = 122

    End Select

    x = Int(Rnd * (b - a + 1) + a)

    y = y & Chr(x)

    Picture1.Print Chr(x) & " ";

    Picture1.FontItalic = False

  Next i

  Picture1.Line (0, 0)-(Int(Rnd * 500 + 1000), Int(Rnd * 150) + 100)

End Sub

回答2:

case 0要有空格。

标准写法如下:
select case
case 0
a=48
b=57
case 1
...
case 2
end select