vb 定义变量
这段程序里的变量帮我定义一下网上找的弄下来不能用没有定义变量~用户登陆PrivateSubcmdOk_Click()StaticintErrAsInteger'静态变量累...
这段程序里的变量帮我定义一下 网上找的 弄下来不能用 没有定义变量~
用户登陆
Private Sub cmdOk_Click()
Static intErr As Integer '静态变量累加出错次数
AdoUser.Refresh '刷新记录集(关键语句)
Set Rs = AdoUser.Recordset '设置记录集变量
'*****************************
' 以下是四种查找记录的的方法。
' 测试其中一种方法时,
' 应注释其他方法。
'*****************************
'用SQL查找(不区分大小写)
Dim Rss As New ADODB.Recordset
Rss.Open "SELECT * FROM users WHERE username='" _
& txtUserID & "'", AdoUser.ConnectionString, adOpenKeyset
If Not Rss.BOF Then Debug.Print Rss("username"), Rss.RecordCount
'通过循环查找(区分大小写)
' Dim RsDo As ADODB.Recordset
' Set RsDo = adoUser.Recordset
' RsDo.MoveFirst
' Do While Not RsDo.EOF
' If RsDo("用户名") = txtUserID Then Exit Do
' RsDo.MoveNext
' Loop
' If Not RsDo.EOF Then Debug.Print RsDo("密码")
'用记录集的Filter属性
' Dim RsF As ADODB.Recordset
' Set RsF = adoUser.Recordset
' RsF.Filter = "用户名='" & txtUserID & "'"
' If Not RsF.BOF Then Debug.Print RsF("密码")
' RsF.Filter = ""
'检查用户名(利用记录集的Find方法,不区分大小写)
Rs.Find "username='" & txtUserID.Text & "'"
If Not Rs.EOF Then '若用户名正确
'检查密码
If Rs("pwd") = txtPassword.Text Then '若密码正确
gstrUser = txtUserID.Text '存用户名
If Rs("EMPName") = "admin" Then '存用户权限
gblnPow = True
Else
gblnPow = False
End If
Main.Show '显示主窗体
Unload Me '卸载本窗体
Else '若密码错误
intErr = intErr + 1 '错误数+1
If intErr = 3 Then '若出错3次,退出系统
Set Rs = Nothing
Unload Me
Else '若出错不足3次,重新输入
MsgBox "密码输入错误,请重新输入!", vbExclamation
With txtPassword '焦点返回密码框
.SelStart = 0
.SelLength = Len(.Text)
.SetFocus
End With
End If
End If
Else '若用户名错误
intErr = intErr + 1 '错误数+1
If intErr = 3 Then '若出错3次,退出系统
Set Rs = Nothing
Unload Me
Else '若出错不足3次,重新输入
MsgBox "用户名输入错误,请重新输入!", vbExclamation
With txtUserID '焦点返回用户框
.SelStart = 0
.SelLength = Len(.Text)
.SetFocus
End With
End If
End If
End Sub
gstrUser 这个事变了 怎么定义不明白~~ 不会就不用回答了~得不到分的~~=-=~ 展开
用户登陆
Private Sub cmdOk_Click()
Static intErr As Integer '静态变量累加出错次数
AdoUser.Refresh '刷新记录集(关键语句)
Set Rs = AdoUser.Recordset '设置记录集变量
'*****************************
' 以下是四种查找记录的的方法。
' 测试其中一种方法时,
' 应注释其他方法。
'*****************************
'用SQL查找(不区分大小写)
Dim Rss As New ADODB.Recordset
Rss.Open "SELECT * FROM users WHERE username='" _
& txtUserID & "'", AdoUser.ConnectionString, adOpenKeyset
If Not Rss.BOF Then Debug.Print Rss("username"), Rss.RecordCount
'通过循环查找(区分大小写)
' Dim RsDo As ADODB.Recordset
' Set RsDo = adoUser.Recordset
' RsDo.MoveFirst
' Do While Not RsDo.EOF
' If RsDo("用户名") = txtUserID Then Exit Do
' RsDo.MoveNext
' Loop
' If Not RsDo.EOF Then Debug.Print RsDo("密码")
'用记录集的Filter属性
' Dim RsF As ADODB.Recordset
' Set RsF = adoUser.Recordset
' RsF.Filter = "用户名='" & txtUserID & "'"
' If Not RsF.BOF Then Debug.Print RsF("密码")
' RsF.Filter = ""
'检查用户名(利用记录集的Find方法,不区分大小写)
Rs.Find "username='" & txtUserID.Text & "'"
If Not Rs.EOF Then '若用户名正确
'检查密码
If Rs("pwd") = txtPassword.Text Then '若密码正确
gstrUser = txtUserID.Text '存用户名
If Rs("EMPName") = "admin" Then '存用户权限
gblnPow = True
Else
gblnPow = False
End If
Main.Show '显示主窗体
Unload Me '卸载本窗体
Else '若密码错误
intErr = intErr + 1 '错误数+1
If intErr = 3 Then '若出错3次,退出系统
Set Rs = Nothing
Unload Me
Else '若出错不足3次,重新输入
MsgBox "密码输入错误,请重新输入!", vbExclamation
With txtPassword '焦点返回密码框
.SelStart = 0
.SelLength = Len(.Text)
.SetFocus
End With
End If
End If
Else '若用户名错误
intErr = intErr + 1 '错误数+1
If intErr = 3 Then '若出错3次,退出系统
Set Rs = Nothing
Unload Me
Else '若出错不足3次,重新输入
MsgBox "用户名输入错误,请重新输入!", vbExclamation
With txtUserID '焦点返回用户框
.SelStart = 0
.SelLength = Len(.Text)
.SetFocus
End With
End If
End If
End Sub
gstrUser 这个事变了 怎么定义不明白~~ 不会就不用回答了~得不到分的~~=-=~ 展开
2个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询