📄 frmlogin.frm
字号:
VERSION 5.00
Begin VB.Form frmLogin
BorderStyle = 3 'Fixed Dialog
Caption = "登录"
ClientHeight = 4545
ClientLeft = 2835
ClientTop = 3480
ClientWidth = 7395
BeginProperty Font
Name = "宋体"
Size = 12
Charset = 134
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
LinkTopic = "Form1"
MaxButton = 0 'False
MinButton = 0 'False
Picture = "frmLogin.frx":0000
ScaleHeight = 2685.336
ScaleMode = 0 'User
ScaleWidth = 6943.504
ShowInTaskbar = 0 'False
StartUpPosition = 2 '屏幕中心
Begin VB.ComboBox cmbType
Height = 360
ItemData = "frmLogin.frx":5E98
Left = 3195
List = "frmLogin.frx":5E9A
Style = 2 'Dropdown List
TabIndex = 6
Top = 2160
Width = 1935
End
Begin VB.TextBox txtUserName
BeginProperty Font
Name = "宋体"
Size = 9
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 345
Left = 3240
TabIndex = 1
Top = 960
Width = 2325
End
Begin VB.CommandButton cmdOK
Caption = "确定"
Default = -1 'True
BeginProperty Font
Name = "宋体"
Size = 10.5
Charset = 134
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 375
Left = 2280
Picture = "frmLogin.frx":5E9C
Style = 1 'Graphical
TabIndex = 4
Top = 3360
Width = 1140
End
Begin VB.CommandButton cmdCancel
Cancel = -1 'True
Caption = "取消"
BeginProperty Font
Name = "宋体"
Size = 10.5
Charset = 134
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 390
Left = 3960
Picture = "frmLogin.frx":1CC08
Style = 1 'Graphical
TabIndex = 5
Top = 3360
Width = 1140
End
Begin VB.TextBox txtPassword
BeginProperty Font
Name = "宋体"
Size = 9
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 345
IMEMode = 3 'DISABLE
Left = 3210
PasswordChar = "*"
TabIndex = 3
Top = 1605
Width = 2325
End
Begin VB.Label Label3
AutoSize = -1 'True
BackStyle = 0 'Transparent
Caption = "身 份:"
Height = 240
Left = 1560
TabIndex = 7
Top = 2160
Width = 1035
End
Begin VB.Label lblLabels
BackColor = &H00C0C000&
BackStyle = 0 'Transparent
Caption = "用户名称(&U):"
BeginProperty Font
Name = "宋体"
Size = 10.5
Charset = 134
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 495
Index = 0
Left = 1680
TabIndex = 0
Top = 960
Width = 1440
End
Begin VB.Label lblLabels
BackColor = &H00C0C000&
BackStyle = 0 'Transparent
Caption = "密码(&P):"
BeginProperty Font
Name = "宋体"
Size = 10.5
Charset = 134
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 495
Index = 1
Left = 1680
TabIndex = 2
Top = 1560
Width = 1440
End
End
Attribute VB_Name = "frmLogin"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Const MaxLogTimes As Integer = 3 '定义允许尝试登录的最大次数
Private Sub cmdCancel_Click()
If MsgBox("你选择了退出系统登录,退出将不能启动管理系统!" & vbCrLf _
& "是否真的退出?", vbYesNo + vbQuestion, "登录验证") = vbYes Then
Unload Me '卸载登录窗体
End If
End Sub
Private Sub cmdOk_Click()
Dim objCn As Connection, objRs As Recordset, strSQL$
If Trim(txtusername) = "" Then '检验是否输入用户名
MsgBox "请输入用户名!", vbExclamation, "登录验证"
txtusername = ""
txtusername.SetFocus
Exit Sub
End If
If Trim(txtpassword) = "" Then '检验是否输入登录口令
MsgBox "请输入登录口令!", vbExclamation, "登录验证"
txtpassword = ""
txtpassword.SetFocus
Exit Sub
End If
'静态常量intLogTimes用于保存用户请求验证的次数
Static intLogTimes As Integer
intLogTimes = intLogTimes + 1 '保存当前登录次数
If intLogTimes > MaxLogTimes Then
'超过允许的登录次数,显示提示信息
MsgBox "你已经超过允许的登录验证次数!" & vbCr _
& "应用程序将结束!", vbCritical, "登录验证"
End '结束应用程序
End If
'输入合法,进一步检验正确性
'创建与数据库的联接
Set objCn = New Connection '实例化联接对象
With objCn '建立数据库联接
.Provider = "SQLOLEDB"
.ConnectionString = "User ID=sa;PWD=;Data Source=(local);" & _
"Initial Catalog=datatushu"
.Open
End With
'根据用户身份创建SQL Select命令
Dim objLog As New Recordset
Select Case cmbType
Case "1"
strSQL = "select 密码 as 密码 from 管理者信息 where 权限=1"
Case "2"
strSQL = "select 密码 as 密码 from 管理者信息 where 权限=2"
Case "3"
strSQL = "select 密码 as 密码 from 管理者信息 where 权限=3"
End Select
'执行查询获得用户登陆密码
Set objRs = New Recordset
With objRs
Set .ActiveConnection = objCn
.CursorLocation = adUseClient
.CursorType = adOpenStatic
.Open strSQL
If .RecordCount < 1 Then
MsgBox "用户名输入错误!", vbCritical, "登录验证"
txtusername.SetFocus
txtusername.SelStart = 0
txtusername.SelLength = Len(txtusername)
Else
If txtpassword.Text = "" Then
MsgBox "口令错误,请重新输入!", vbCritical, "登录验证"
txtpassword.SetFocus
txtpassword = ""
Else
'保存当前用户信息
CurrentUserName = Trim(txtusername)
CurrentUserPassword = Trim(txtpassword)
CurrentUserType = cmbType
'显示登录成功信息
MsgBox "欢迎使用图书管理系统!", vbInformation, "登录成功"
Unload Me '关闭登录窗体
zhuye.Show '显示系统主窗体
End If
End If
End With
objCn.Close '关闭数据库连接
Set objCn = Nothing '释放数据库连接
Set objRs = Nothing
End Sub
Private Sub Form_Load()
'清空用户名和口令文本框
txtusername = ""
txtpassword = ""
'创建身份列表
cmbType.AddItem "1"
cmbType.AddItem "2"
cmbType.AddItem "3"
cmbType.ListIndex = 0
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -