VB 简单的登录框源码 检查

来源:百度知道 编辑:UC知道 时间:2024/06/17 21:20:44
Dim pw As String 'PW为定一的存储密码的变量
pw = Text2.Text
If Text1.Text = "dashan" Then 'text1.text是输入用户名的文本框,这里只定义了一个用户名
Select Case pw
Case pw = "123456"
MsgBox ("你选择的是最低权限用户!")
Case pw = "654321"
MsgBox ("你已获得系统认可,请继续操作……")
Case pw = "qishan"
MsgBox ("呵呵!原来是你小子!") '分别定义3个不同权限的密码
Case Else
n = MsgBox("口令不正确!是否重试!", vbYesNo, "错误提示")
If n = 6 Then
Text1.Text = ""
Text2.Text = ""
Else
End
End If

End Select
Else: m = MsgBox("用户名不正确", vbOKCancel, "错误提示")
If m = 1 Then
Text1.Text = ""
Text2.Text = ""
End If

End If

我的问题就是 在输入我定义好的用户名后再输入密码,不管密码正确与否它都会它都会密码错误代码段,这是为什么啊?谁能帮我检查检查啊/?
n 是对应的vbyesno 的按钮返回值
同样 m 是 vbokonly

问题出在Case语句上。因为你已经写了Select Case pw,那么下面的Case语句就一定不要写Case pw = "123456",这样的话程序会将pw = "123456"作为关系表达式进行计算,而结果为1或0(True or False),那么无论如何都会执行Case Else语句。正确代码如下,在★★处作了改动。
-----------------------------------------
Dim pw As String 'PW为定一的存储密码的变量
pw = Text2.Text
If Text1.Text = "dashan" Then 'text1.text是输入用户名的文本框,这里只定义了一个用户名
Select Case pw
Case "123456" '★★应该这样写!
MsgBox ("你选择的是最低权限用户!")
Case "654321" '★★应该这样写!
MsgBox ("你已获得系统认可,请继续操作……")
Case "qishan" '★★应该这样写!
MsgBox ("呵呵!原来是你小子!") '分别定义3个不同权限的密码
Case Else
n = MsgBox("口令不正确!是否重试!", vbYesNo, "错误提示")
If n = vbYes Then
Text1.Text = ""
Text2.Text = ""
Else
End
End If

End Sel