【正文】
投訴管理運行后的子窗體如圖45所示。 Private Sub cmdadd_Click() On Error GoTo adderror If = 新增記錄 Then 39。 amp?! D43 運行的用戶登錄子窗體 在本項目中,用戶登錄子窗體是運行的第一個界面,它的作用是檢查用戶名和密碼是否正確。 find_date2 amp。 amp。 amp。 圖41 查詢子窗體運行效果 在列表框中給出編號或年月日后,“查詢”按鈕的Click事件將給出與數(shù)據(jù)庫查找比較的結(jié)果。就是在DataGrid的文本框中顯示圖書進出的清單,最后把填寫的明細存儲到數(shù)據(jù)庫中。 amp?! rivate 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(刪除當前記錄嗎?, 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 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 圖書借閱和圖書賠償子窗體運行后如圖34和圖35所示,因為它們的代碼和圖書登記子窗體的代碼雷同,在此不做重復?! rivate Sub changepwd_Click() End Sub 下面是響應“圖書借閱”子菜單Click事件,調(diào)出圖書借閱窗體代碼。 查詢語句 Public rs_data1 As New Public findok As Boolean Public frmdata As Boolean Public Const keyenter = 13 39?! ?2) 選擇模塊圖標后,單擊“打開”按鈕,則模塊已經(jīng)添加到項目中了。MSFlexGridMSFlexGrid1 表3 所有子窗體子 窗 體 名Text圖書登記frmdengji圖書借閱frmjieyue圖書賠償frmpeichang增加新用戶frmadduser查詢輸出frmfind登錄系統(tǒng)frmlogin修改密碼frmchangepwd 下面分別給出這些子窗體,以及它們所使用的控件。 表1 主窗體的屬性屬 性值Caption圖書管理系統(tǒng)NameMainMenuMainmenu1WindowstateMaxsize Windowstate的值為Maxsize,即程序啟動之后自動最大化?! D19 設(shè)置連接數(shù)據(jù)源 在“數(shù)據(jù)源名”文本框中添加一個名字,單擊“確定”按鈕完成系統(tǒng)默認連接設(shè)置?! D16 引用ADO連接數(shù)據(jù)庫 在程序設(shè)計的公共模塊中,先定義ADO連接對象。 圖書登記表,如圖9所示?! ?圖書管理模塊:用來實現(xiàn)圖書的登記、借閱、賠償。各個實體具體的描述ER圖如下?! ‖F(xiàn)某圖書館需要管理其各種人員和圖書信息,希望實現(xiàn)辦公的信息化,通過建立一個圖書管理系統(tǒng)來管理圖書?! ?4) 可以實現(xiàn)對值班人員的管理?! D5 投訴管理實體ER圖 值班管理實體ER圖如圖6所示?! ∪?、數(shù)據(jù)庫設(shè)計 這里的數(shù)據(jù)庫采用Access,用ADO作為連接數(shù)據(jù)對象?! D12 圖書資料表 圖13 系統(tǒng)管理表 投訴管理表,如圖14所示?! 〈蜷_控制面板中的“管理工具”→“數(shù)據(jù)源”(ODBC),出現(xiàn)如圖17所示的對話框?! 〔藛螒贸绦蛑?,有5個菜單選項,每個選項對應著ER圖的一個子項目?! D21 主窗體 創(chuàng)建各子窗體 選擇“工程”→“添加窗體”命令,添加子窗體?! D26 修改密碼子窗體 (4) 庫房管理子窗體如圖27所示。 圖29 用戶登錄子窗體 圖30 值班管理子窗體 (8) 投訴管理子窗體如圖31所示,其控件如表9所示。 標記當前用戶ID Public userpow As String 39。 Private Sub chaxunshuchu_Click() End Sub 下面是響應“退出”子菜單Click事件,調(diào)出退出窗體代碼?! ?1) 圖書登記子窗體代碼 本窗體用來填寫圖書登記的信息,用ADO來連接數(shù)據(jù)庫,是本窗體的重點?! rivate Sub Command1_Click() Dim sql As String Dim rs_add As New If Trim() = Then MsgBox 用戶名不能為空, vbOKOnly + vbExclamation, Exit Sub Else sql = select * from 系統(tǒng)管理 sql, conn, adOpenKeyset, adLockPessimistic While ( = False) If Trim((0)) = Trim() Then MsgBox 已有這個用戶, vbOKOnly + vbExclamation, = = = = Exit Sub Else End If Wend If Trim() Trim() Then MsgBox 兩次密碼不一致, vbOKOnly + vbExclamation, = = Exit Sub ElseIf Trim() system And Trim() guest Then MsgBox 請選擇正確的用戶權(quán)限, vbOKOnly + vbExclamation, = Exit Sub Else (0) = (1) = (2) = 下面是返回成功信息對話框的代碼: MsgBox 添加用戶成功, vbOKOnly + vbExclamation, Unload Me End If End If End Sub (3) 修改密碼子窗體代碼 修改密碼子窗體是用來修改用戶密碼的?! ★@示目錄 (4) 庫房管理子窗體