【正文】
ql, conn, adOpenKeyset, adLockPessimistic If = True Then MsgBox 沒有這個(gè)用戶 , vbOKOnly + vbExclamation, Else 39。 檢驗(yàn)密碼是否正確 用戶名和密碼通過后,要關(guān)閉本窗體并打開主窗體。 If Trim((1)) = Trim() Then userID = userpow = (2) Unload Me Else MsgBox 密碼不正確 , vbOKOnly + vbExclamation, End If End If End If 39。 只能輸入 3 次 t = t + 1 If t = 3 Then Unload Me End If Exit Sub End Sub (7) 值班管理子窗體代碼 值 班管理子窗體的作用是把值班人員的時(shí)間安排形成列表。運(yùn)行的值班管理子窗體如圖 44 所示。 圖 44 運(yùn)行的值班管理子窗體 先定義連接數(shù)據(jù)庫的變量 : Option Explicit Dim rs_zhiban As New 然后列出窗體部分的代碼。 Private Sub cmdadd_Click() On Error GoTo adderror If = 新增記錄 Then 39。 當(dāng)此按鈕的狀態(tài)為為 “增加記錄 ”時(shí) = 確定 39。 按鈕名稱改 “確定 ” = False = True = True 39。 設(shè)定 DataGrid 可以增加記錄 Else If Not IsNull() Then If Not IsDate(Trim((值班開始日期 ).CellText())) Then MsgBox 請(qǐng)按照格式 yyyymmdd 輸入值班開始日期 , vbOKOnly + vbExclamation, Exit Sub End If If Not IsDate(Trim((值班開始時(shí)間 ).CellText())) Then MsgBox 請(qǐng)按照格式 hhmm 輸入值班開始時(shí)間 , vbOKOnly + vbExclamation, Exit Sub End If If Not IsDate(Trim((值班截止日期 ).CellText())) Then MsgBox 請(qǐng)按照格式 yyyymmdd 輸入值班截止日期 , vbOKOnly + vbExclamation, Exit Sub End If If Not IsDate(Trim((值班截止時(shí)間 ).CellText())) Then MsgBox 請(qǐng)按照格式 hhmm 輸入值班截止時(shí)間 , vbOKOnly + vbExclamation, Exit Sub End If If Trim((值班人 ).CellText()) = Then MsgBox 值班人不能為空 !, vbOKOnly + vbExclamation, Exit Sub End If MsgBox 添加信息成功 !, vbOKOnly + vbExclamation, = False = False Else MsgBox 沒有添加信息 !, vbOKOnly + vbExclamation, End If = 新增記錄 = True End If adderror: If 0 Then MsgBox End If End Sub Private Sub cmdcancel_Click() Unload Me End Sub Private Sub cmddel_Click() Dim answer As String On Error GoTo delerror answer = MsgBox(確定要?jiǎng)h除嗎 ?, vbYesNo, ) If answer = vbYes Then = True MsgBox 成功刪除 !, vbOKOnly + vbExclamation, = False Else Exit Sub End If delerror: If 0 Then MsgBox End If End Sub Private Sub Form_Load() Dim sql As String On Error GoTo loaderror sql = select * from 值班管理 = adUseClient sql, conn, adOpenKeyset, adLockPessimistic 39。 打開數(shù)據(jù)庫 39。 設(shè)定 DataGrid 控件屬性 = False 39。 不可增加 = False 39。 不可刪除 = False Set = rs_zhiban Exit Sub loaderror: MsgBox End Sub Private Sub Form_Unload(Cancel As Integer) Set = Nothing End Sub (8) 投訴管理子窗體代碼 投訴管理子窗體是為了對(duì)人員進(jìn)行更好的管理而設(shè)置的,可以向其添加投訴的對(duì)象、時(shí)間和內(nèi)容等。投訴管理運(yùn)行后的子窗體如圖 45 所示。 圖 45 運(yùn)行的投訴管理子窗體 以下為窗體的代碼 : Private Sub Command1_Click() On Error GoTo adderr Exit Sub adderr: MsgBox End Sub Private Sub Command2_Click() On Error GoTo deleteerr With If Not .EOF And Not .BOF Then If MsgBox(刪除當(dāng)前記錄嗎 ?, vbYesNo + vbQuestion) = vbYes Then .Delete .MoveNext If .EOF Then .MoveLast End If End If End With Exit Sub deleteerr: MsgBox End Sub Private Sub Command3_Click() If Then MsgBox 這是第一條記錄 , vbOKCancel + vbQuestion End If End Sub Private Sub Command4_Click() If Then MsgBox 這是最后一條記錄 , vbOKCancel + vbQuestion End If End Sub Private Sub Command5_Click() If Then MsgBox 記錄空 , vbOKCancel + vbQuestion End Else End If Exit Sub End Sub Private Sub Command6_Click() If = 0 Then MsgBox 空記錄 , vbOKCancel + vbQuestion End Else End If End Sub Private Sub Command7_Click() End Sub 到這里, 各個(gè)窗體的界面和代碼都介紹完了。發(fā)布后可以作為一個(gè)實(shí)際的項(xiàng)目應(yīng)用。