【正文】
administrator And = Then Unload Me Exit SubEnd If ’如權(quán)限符合,準(zhǔn)予登陸If = Then MsgBox 請(qǐng)輸入用戶編號(hào)!, vbOKOnly + vbInformation, 用戶登陸 Exit Sub ’用戶為空時(shí)提示,聚焦Else UseridSQL = select * from User_Info where user_Id=39。 amp。 ’用戶非空時(shí)啟用數(shù)據(jù)庫(kù)鏈接 UseridSQL ’把sql語(yǔ)句傳給函數(shù) If = False Then ’列表未到底從數(shù)據(jù)庫(kù)中取值 = Trim(!user_name) Level = !user_level If = Trim(!user_pwd) Then ’密碼符合 CurrentUser = Trim(!user_name) Call DisplayMenu Unload Me ’載入主界面 Else MsgBox 密碼錯(cuò)誤! amp。 vbCrLf amp。 vbCrLf amp。 請(qǐng)重新輸入!, vbOKOnly + vbInformation, 用戶登陸 ’ 用戶不存在提示,清空聚焦 = Exit Sub End If End IfEnd SubPrivate Sub Form_Load() Set MyLogin = New OpenRs ’引用類函數(shù)End SubPrivate Sub txtPass_KeyPress(KeyAscii As Integer)If KeyAscii = 13 Then ’輸密碼時(shí)回車確定 Call cmdOK_ClickEnd IfEnd SubPrivate Sub txtUserId_Change() ’用戶名改變文本框清空 = = End SubPrivate Sub txtUserId_LostFocus() ’焦點(diǎn)從用戶id轉(zhuǎn)移時(shí)從數(shù)據(jù)庫(kù)讀入用戶名UseridSQL = select * from User_Info where user_Id=39。 amp。 UseridSQL If = False Then = Trim(!user_name) End IfEnd SubPrivate Sub DisplayMenu() ’ 設(shè)置用戶不同等級(jí)的訪問(wèn)權(quán)限,不夠等級(jí)隱藏 If Level = 2 Then = False = False = False = FalseElseIf Level = 3 Then = False = False = False = False = False = False = False = FalseEnd IfEnd Sub 系統(tǒng)主界面及代碼設(shè)計(jì)用戶登錄后,將進(jìn)入系統(tǒng)主界面,如下圖:圖53 系統(tǒng)主界面系統(tǒng)主界面實(shí)現(xiàn)的代碼設(shè)計(jì)如下:Dim Myinfo As String ’定義變量Dim success As LongPrivate Declare Function htmlhelp Lib Alias HtmlHelpA (ByVal hwndCaller As Long, ByVal pszFile As String, ByVal uCommand As Long, ByVal dwData As Long) As LongPrivate Sub MDIForm_Load() Set Classprint = New OpenRs ’調(diào)用類函數(shù) = TrueDim mypanel As PanelSet mypanel = (1, , , sbrDate) 39。狀態(tài)欄2顯示星期幾Call MyWeekDaySet mypanel = (3)(3).Text = 當(dāng)前用戶: amp。狀態(tài)欄3顯示文本消息 = sbrSpringEnd SubPrivate Sub mnuAbout_Click() ’設(shè)置說(shuō)明ShellAbout , 員工培訓(xùn)管理系統(tǒng), 版權(quán)所有(C) amp。 開(kāi)發(fā):yeao, End SubPrivate Sub mnuAddResult_Click() ’以下定義菜單點(diǎn)擊觸發(fā)各模塊End SubPrivate Sub mnuClassQuery_Click()End SubPrivate Sub mnuCourseQuery_Click()End SubPrivate Sub mnuResultQuery_Click()End SubPrivate Sub mnuSchoolSet_Click()End SubPrivate Sub mnuSetClass_Click()End SubPrivate Sub mnuAddStudentInfo_Click()End SubPrivate Sub mnuAddUser_Click()End SubPrivate Sub mnuBackUpDB_Click()End SubPrivate Sub mnuDeleteUser_Click()End SubPrivate Sub mnuModiPwd_Click()End SubPrivate Sub mnuExit_Click() ’設(shè)置退出系統(tǒng)If MsgBox(要退出系統(tǒng)嗎?, vbYesNo + vbInformation, 退出) = vbYes Then Unload FrmMainEnd IfEnd SubPrivate Sub mnuLogoff_Click() ’ 設(shè)置注銷系統(tǒng)If MsgBox(要注銷系統(tǒng)嗎?, vbYesNo + vbInformation, 注銷) = vbYes Then Unload FrmMain End IfEnd SubPrivate Sub mnuRestoreDB_Click()If MsgBox(是否現(xiàn)在就執(zhí)行還原數(shù)據(jù)庫(kù)的操作?, vbYesNo + vbInformation, 還原數(shù)據(jù)庫(kù)) = vbYes Then success = WritePrivateProfileString(BackUp, Restore, True, amp。 歡迎使用員工培訓(xùn)管理系統(tǒng)!End IfMyinfo = Right(Myinfo, Len(Myinfo) 1)(4).Text = MyinfoEnd SubPrivate Sub MyWeekDay() ’定義顯示日期函數(shù)Select Case Weekday(Date) Case 1 (2).Text = 星期日 Case 2 (2).Text = 星期一 Case 3 (2).Text = 星期二 Case 4 (2).Text = 星期三 Case 5 (2).Text = 星期四 Case 6 (2).Text = 星期五 Case 7 (2).Text = 星期六End SelectEnd Sub 用戶管理界面及代碼設(shè)計(jì)這里的用戶是指使用員工培訓(xùn)管理系統(tǒng)的用戶,其界面包括:添加和刪除用戶、數(shù)據(jù)還原和備份等;用戶按權(quán)限等級(jí)分系統(tǒng)管理員、超級(jí)用戶和普通用戶。圖54 用戶管理界面用戶管理界面實(shí)現(xiàn)的代碼設(shè)計(jì)如下(這里以添加用戶為例):Dim MyAddUser As OpenRs ’調(diào)用類函數(shù)Dim Choose As BooleanDim Level As IntegerPrivate Sub Cmdcancel_Click() ’設(shè)置取消鍵Unload MeEnd SubPrivate Sub cmdComp_Click() If Choose = False Then MsgBox 請(qǐng)選擇一個(gè)操作級(jí)別!, vbOKOnly + vbInformation, 添加新用戶 Exit SubEnd If ’增加一條連接到表的記錄集!user_id = Trim() ’把輸入框數(shù)據(jù)存入記錄集!user_name = Trim(txtUsername .Text)!user_des = Trim()!user_pwd = Trim()!user_level = Level ’更新存入表If MsgBox(添加用戶成功! amp。 vbCrLf amp。 vbCrLf amp。 請(qǐng)重新輸入!, vbOKOnly + vbInformation, 提示 = = Exit Sub End If = False = True = False = TrueFor i = 0 To 2 39。全選 (i) = True Next i = 1ElseIf Option1(1).Value = True Then Level = 2 For i = 0 To 6 (i) = True Next i (7) = False (8) = False (9) = False = 1ElseIf Option1(2).Value = True Then Level = 3 (0) = True (1) = True For i = 2 To 9 (i) = False Next i = 1End IfEnd SubPrivate Sub Form_Load()Set MyAddUser = New OpenRsEnd SubPrivate Sub Option1_Click(Index As Integer)Choose = TrueCall Choose_levelEnd SubPrivate Sub ClearText()Dim i As Integer = = = = = For i = 0 To 2 39。圖55 設(shè)置界面設(shè)置界面實(shí)現(xiàn)的代碼設(shè)計(jì)如下(這里以員工基本信息設(shè)置為例,包括添加、修改、刪除和簡(jiǎn)單查詢等):Option ExplicitDim myModiStudent As New OpenRs 39。A) Then Call ClearText = 取消(amp。S) = True = FalseElse Call ClearText = 添加(amp。S) = False = FalseEnd IfEnd SubPrivate Sub cmdDel_Click()