📄 login.frm
字号:
VERSION 5.00
Begin VB.Form frmLogin
BorderStyle = 3 'Fixed Dialog
Caption = "请登录"
ClientHeight = 1815
ClientLeft = 2835
ClientTop = 3480
ClientWidth = 4335
LinkTopic = "Form1"
LockControls = -1 'True
MaxButton = 0 'False
MinButton = 0 'False
ScaleHeight = 1072.362
ScaleMode = 0 'User
ScaleWidth = 4070.329
ShowInTaskbar = 0 'False
StartUpPosition = 2 '屏幕中心
Begin VB.CommandButton cmdOK
Caption = "确定"
Default = -1 'True
Height = 390
Left = 3240
TabIndex = 8
Top = 240
Width = 900
End
Begin VB.CommandButton cmdCancel
Cancel = -1 'True
Caption = "取消"
Height = 390
Left = 3240
TabIndex = 7
Top = 960
Width = 900
End
Begin VB.Frame frmLogin
Caption = "登录"
Height = 1695
Left = 120
TabIndex = 2
Top = 0
Width = 2895
Begin VB.ComboBox cboUserType
Height = 315
ItemData = "Login.frx":0000
Left = 1080
List = "Login.frx":000A
Style = 2 'Dropdown List
TabIndex = 3
Top = 1200
Width = 1485
End
Begin VB.TextBox txtPwd
Height = 345
IMEMode = 3 'DISABLE
Left = 1080
PasswordChar = "*"
TabIndex = 1
Top = 765
Width = 1485
End
Begin VB.TextBox txtUser
Height = 345
Left = 1080
TabIndex = 0
Top = 360
Width = 1485
End
Begin VB.Label lblLabels
AutoSize = -1 'True
Caption = "选择身份:"
Height = 180
Index = 2
Left = 180
TabIndex = 6
Top = 1200
Width = 900
End
Begin VB.Label lblLabels
AutoSize = -1 'True
Caption = "用户名:"
Height = 195
Index = 0
Left = 360
TabIndex = 5
Top = 390
Width = 720
End
Begin VB.Label lblLabels
AutoSize = -1 'True
Caption = "口令:"
Height = 195
Index = 1
Left = 540
TabIndex = 4
Top = 795
Width = 540
End
End
End
Attribute VB_Name = "frmLogin"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
'表示当前用户登录所选择的身份,即用户类型, 0-表示管理员;1-表示学生
Dim mnUserType As Integer
Private Sub cboUserType_Change()
mnUserType = cboUserType.ListIndex
End Sub
Private Sub cboUserType_Click()
mnUserType = cboUserType.ListIndex
End Sub
Private Sub cmdCancel_Click()
Unload Me
End Sub
Private Sub cmdOK_Click()
''取得用户输入的用户名和密码
Dim user As String, pwd As String
user = txtUser
pwd = txtPwd
''根据不同的身份,选择不同的表用以查询
Dim r As New ADODB.Recordset
Set r = DataEnv.rssqlSeek
Dim strSQL As String
Select Case mnUserType
Case 0: '若身份为管理员
strSQL = "select * from admin where name='" & user & "' and pwd='" & pwd & "'"
Case 1: '若身份为学生
strSQL = "select * from student where name='" & user & "' and serial='" & pwd & "'"
End Select
On Error Resume Next
''查询DataEnv.rssqlSeek的状态,如果已经打开,则先关闭
If r.State = adStateOpen Then r.Close
r.Open strSQL ''根据strSQL的内容刷新DataEnv.rssqlSeek
''用户密码错误的次数,如果错误次数超过3次,则退出系统
Static nTryCount As Integer
If r.EOF Then ''登录失败
MsgBox "对不起,无此用户或者密码不正确!请重新输入!!", vbCritical, "错误"
txtUser.SetFocus
txtUser.SelStart = 0
txtUser.SelLength = Len(txtUser)
nTryCount = nTryCount + 1
If nTryCount >= 3 Then
MsgBox "您无权操作本系统!再见!", vbCritical, "无权限"
Unload Me
End If
Else ''登陆成功
''显示MDI窗体, 并将用户类型和用户名传到MDI窗体中的mnUserType, msUserName中
Load MDIMain
With MDIMain
.mnUserType = cboUserType.ListIndex
.msUserName = pwd
.Show
End With
Unload Me
End If
End Sub
Private Sub Form_Load()
cboUserType.ListIndex = 0
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -