




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、信息系統開發與管理(PB)實訓實訓指導書 圖書信息管理系統中加高等應用技術學院一、實訓具體按排和要求1、實訓對象:11,12級計算機2、實訓時間:19-20周(64學時)3、實訓內容:開發圖書信息管理系統4、實訓目的:(1) 進一步熟悉 VB(PB)的集成開發環境,掌握VB(PB)設計應用程序的主要步驟,從而加深對面向可視化對象編程方法的認識。(2) 了解并初步掌握用VB(PB)開發應用程序界面、圖形圖像、數據庫、多媒體等實用內容。(3) 通過實訓鞏固一學期來所學到的VB(PB)知識,熟練掌握計算機操件技能,培養開發的思想,同時產生濃厚的興趣,為今后進一步學習打下基礎。5、實訓要求說明: 指導
2、書給出的內容只是完成基本功能,其它功能請查閱相關參考書。 實訓上機期間,每個學生都要按時按量獨立完成實訓的內容。如有違紀者,將取消其實訓的上機資格,并且其實訓成績當零分處理。 實訓期間要嚴格按照實訓報告格式要求認真書寫實訓報告(電子檔與手寫稿(或打印稿),實訓結束后將實訓作品和實訓報告一起上交指導老師批改、評分。 實訓后期,將酌情安排現場測試與答辯,并將此項分數按一定比例打入實訓成績總評。二、實訓報告(設計說明書)書寫的格式要求1、實訓報告封面要依次填寫設計的科目、題目、專業、班級、姓名、學號、日期、指導老師等項目。2、報告內頁書寫的具體內容應包含以下幾個方面:1) 實訓名稱:即實訓題目。2)
3、 實訓目的:即通過本次實訓要得到哪些方面的主要訓練,將學會掌握哪些相關專業技能。3) 實訓環境:既設備(硬件、系統平臺)、開發工具、方法手段等。4) 實訓計劃:做出本次實訓的總體計劃并制定出實施計劃的具體步驟(可按完成功能模塊來劃分)及進度安排,列出時間表。5) 關鍵技術與解決途徑:本次實訓的技術要點(可按實訓計劃里制定的具體步驟一一編寫),并要求寫出如何解決這些技術要點(要求編寫源代碼并附上代碼說明,必要時請附上截圖)。6) 自我評價:即總結本次實訓的個人心得體會。包括對這次實訓任務完成情況的評價;實訓的收獲與預期目標是否一致的評價以及對實訓組織、安排、管理等方面的評價。這部分不僅要求寫出問
4、題,更希望寫出你的建議。三、實訓成績的評定標準指導老師根據學生實訓期間的表現、實訓內容的完成情況以及所寫的實訓報告(設計說明書)給予該生優、良、中、及格、不及格等綜合評定等級,并作為該實訓課程的期評成績上報成績。四、本次實訓的具體內容:圖書信息管理系統系統功能分析:l 讀者基本信息的輸入l 讀者基本信息的查詢(要求能按讀者編號進行查詢)l 讀者基本信息的修改l 圖書信息的輸入l 圖書信息的修改l 借閱信息的查詢(要求能根據人來查書、根據書來查人)l 讀者借書l 讀者還書以下是附加的功能:(選做)l 根據讀者姓名來查詢讀者信息l 根據書名來查詢圖書信息l 利用新窗口來修改讀者信息和圖書信息顯示所
5、有圖書查詢單冊增加新書刪除圖書根據書來查人根據人來查書顯示所有借閱情況借書還書查詢一個讀者增加一個讀者刪除一個讀者顯示所有讀者讀者管理圖書管理借閱管理圖書管理系統系統功能模塊: 一、圖書信息管理系統功能介紹1主界面圖1 程序運行后主界面的效果如圖1所示??梢钥吹?,窗體的上部是菜單欄,包含3個菜單項,即:讀者管理、圖書管理和借閱管理。2讀者管理選擇菜單“讀者管理”,如圖2所示,該菜單項中有4個子菜單項:顯示所有讀者、查詢一個讀者、增加一個讀者和刪除一個讀者。選擇菜單“讀者管理顯示所有讀者”,則在主界面的數據表格中列出所有的讀者信息,如圖3所示。選擇菜單“讀者管理查詢一個讀者”,彈出對話框如圖4所
6、示,要求輸入要查詢的讀者編號信息。輸入讀者編號后單擊“查詢”按鈕,則在主界面的數據表格中列出該讀者的信息;否則,系統提示用戶“查無此人”。選擇菜單“讀者管理增加一個讀者”,彈出對話框如圖5所示,要求輸入讀者編號和讀者姓名,輸入完整的信息后單擊保存按鈕,系統判斷是否可以向數據庫中添加該讀者信息,如果添加成功,則在主界面的數據表格中列出數據庫中所有的讀者信息。選擇菜單“讀者管理刪除一個讀者”,彈出對話框如圖6所示,要求輸入讀者編號,輸入完整的信息后單擊“刪除”按鈕,若該刪除操作成功,則在主界面的數據表格中顯示剩余的所有讀者信息。 圖2 圖3 圖4圖5 圖63圖書管理選擇菜單“圖書管理”,如圖7所示
7、,該菜單項中有4個子菜單項:顯示所有圖書、查詢單冊、增加新書和刪除圖書。該菜單項功能與讀者管理部分類似,在此不再重復。4借閱管理選擇菜單“借閱管理”,如圖8所示。該菜單項中有5個子菜單項:顯示所有借閱情況、借書、還書、根據書來查人和根據人來查書。圖7 圖8選擇菜單“借閱管理顯示所有借閱情況”,則在主界面的數據表格中顯示所有的借閱記錄。選擇菜單“借閱管理借書”,彈出對話框如圖9所示,要求用戶輸入所借圖書編號和讀者編號。輸入完整的信息后單擊“借書”按鈕,如果借書成功,則在主界面的數據表格中列出當前讀者的借閱情況。選擇菜單“借閱管理還書”,彈出對話框如圖10所示,要求輸入所借圖書編號,輸入完整的信息
8、后單擊“還書”按鈕,如果還書成功,則在主界面的數據表格中列出當前讀者還書后的借閱情況。 圖9 圖10選擇菜單“借閱管理根據人來查書”,彈出對話框如圖11所示,要求輸入讀者編號,輸入完整的信息后單擊“查詢”按鈕,如果查詢操作成功,則在主界面的數據表格中列出當前讀者所有的借閱情況。選擇菜單“借閱管理根據書來查人”,彈出對話框如圖12所示,系統顯示相應的信息提示,如果查詢操作成功,則在主界面的數據表格中列出當前圖書的借閱情況。 圖11 圖12二、創建數據庫打開Access,建立一個名為bookdb的數據庫,數據庫中有兩張數據表:book、borrow和reader 。三張表的字段信息如下:表1 bo
9、ok表項內容字段名稱數據類型字段大小bookid文本15bookname文本100bookstate文本4(將bookid字段設為主鍵)表2 borrow表項內容字段名稱數據類型字段大小bookid文本15readerid文本15(將bookid字段設為主鍵)表3 reader表項內容字段名稱數據類型字段大小readerid文本15readername文本20booknum文本4(將readerid字段設為主鍵)三、創建數據源(ODBC)基于SQL的ODBC(Open DataBase Connectivity,開放式數據庫連接)是Microsoft公司在1989年退出的連接外部數據庫的標準,
10、若采用這套標準,一個應用程序就可以通過一組通用的代碼訪問不同的數據庫管理系統。在Windows XP操作系統環境下,本實例的ODBC設置步驟如下:1 進入“控制面板管理工具”,雙擊“數據源(ODBC)”,出現“ODBC數據源管理器”,如圖13所示。 圖13 圖142 單擊“添加”按鈕,出現創建數據源對話框,如圖14所示。3 選擇“Driver Do Microsoft Access (*.mdb)”,單擊完成按鈕,出現ODBC Microsoft Access安裝對話框,如圖15所示,在數據源一項中輸入“book”。4 單擊“選擇”按鈕,出現選擇數據庫對話框,如圖16所示,首先選擇數據庫所在的
11、驅動器,然后在目錄中選擇數據庫的路徑,這樣在“數據庫名”一欄中就會列出相應的Access數據庫,然后單擊選定數據庫“bookdb”。 圖15 圖165 單擊確定按鈕,系統自動返回ODBC數據源管理器,數據源“book”創建成功。四、圖書管理系統實現該圖書管理系統的工程名稱為BookManSys.vbp,該工程包含所有文件如圖17所示。 圖171新建工程新建工程,并在工程資源管理器中將工程名稱屬性改為:BookManSys.vbp。選擇菜單“工程部件”,從控件列表中選中如下選項:Microsoft ADO Data Control 6.0 (OLEDB)Microsoft DataGrid Co
12、ntrol 6.0 (OLEDB)(1) 在“工程資源管理器”窗口中單擊鼠標右鍵,選擇“添加添加模塊”。單擊打開按鈕,然后在該模塊的“代碼編輯窗口”中添加代碼如下:Public ActFlag As Boolean2FrmMain窗體FrmMain窗體的設計步驟如下:(2) 選中“Form1”窗體,將該窗體的“名稱”屬性改為“frmMain”,“Caption”屬性改為“圖書管理系統”。在窗體上設計一個菜單,該菜單結構見表4。(3) 在窗體上添加一個框架控件(Frame),將其“Caption”屬性刪除,“BorderStyle”屬性選擇“0None”。在Fram1中添加一個數據表格(Data
13、Grid),將其“名稱”屬性設置為“DataGrid”,“Visible”屬性設置為False。(4) 向窗體中添加兩個ADO數據控件(Adodc),將“Adodc1”的“名稱”屬性設置為“Adodc”,將“Adodc2”的“名稱”屬性設置為“AdodcTemp”,“Visible”屬性均設置為False。這兩個控件屬性列表中的“ConnectionString”屬性值均按如下方法設置。(5) 單擊,彈出屬性頁對話框,如圖18所示。(6) 單擊“生成”按鈕,進入“數據鏈接屬性”對話框,如圖19所示。圖18 圖19(7) 選擇“Microsoft OLE DB Provider for ODBC
14、 Drivers”,單擊“下一步”按鈕,由“提供者”選項卡跳到“連接”選項卡,如圖20所示。選中“使用數據源名稱”,在該項下拉列表中選擇“book”,然后單擊“確定”按鈕,系統自動回到屬性頁對話框,單擊確定按鈕即可。 圖20(8) 進入frmMain窗體的代碼視圖,添加如下代碼:Public Sub DisplayGrid(CaptionStr As String)'將臨時ADO數據控件中的RecordSource屬性賦值給和數據表格相連的ADO數據控件 Adodc.RecordSource = AdodcTemp.RecordSource Adodc.Refresh '將數據
15、表格綁定到ADO數據控件 Set DataGrid.DataSource = Adodc DataGrid.Refresh '修改數據表格的標題 DataGrid.Caption = CaptionStr '將數據表格設置為用戶可見 DataGrid.Visible = TrueEnd Sub表4 菜單結構設置菜單項名稱讀者管理ReaderMan.顯示所有讀者DispAllReader.查詢一個讀者FindOneReader.增加一個讀者AddReader.刪除一個讀者DelReader圖書管理BookMan.顯示所有圖書DispAllBook.查詢單冊FindOneBook.
16、增加新書AddBook.刪除圖書DelBook借閱管理BorrowMan.顯示所有借閱情況DispAllBor.借書Borrow.還書Return.根據人來查書ReaderToBook.根據書來查人BookToReader3顯示所有讀者(9) 選擇菜單“讀者管理顯示所有讀者”,在代碼編輯窗口中添加以下代碼:Private Sub DispAllReader_Click() Dim RecCount As Integer '從數據庫表"reader"中查找所有的讀者記錄 AdodcTemp.RecordSource = "select readerid as
17、 " & " 讀者編號" & _", readername as " & " 讀者姓名 " & ",booknum as " & "借閱圖書冊數" _& " from reader " AdodcTemp.Refresh RecCount = AdodcTemp.Recordset.RecordCount '如果查到的記錄數> 0,則顯示所有讀者信息,否則提示"未查到任何讀者記錄",然
18、后顯示一個空 '的數據表格。 If RecCount > 0 Then DisplayGrid ("顯示所有讀者") Else MsgBox "未查到任何讀者記錄!", , "提示" DisplayGrid ("顯示所有讀者") Exit Sub End IfEnd Sub4查詢一個讀者(10) 選擇菜單“讀者管理查詢一個讀者”,在代碼編輯窗口中添加以下代碼:Private Sub FindOneReader_Click() Dim RecCount As Integer '將標志變量置為假
19、ActFlag = False '顯示查詢一個讀者窗體 frmFindOneReader.Show vbModal '若是在查詢一個讀者窗體中已經將ActFlag修改為True時,則查看所查到的記錄條數,如果查到的 '記錄條數> 0時,刷新數據表格,顯示查詢結果 If ActFlag Then RecCount = AdodcTemp.Recordset.RecordCount If RecCount > 0 Then DisplayGrid ("查詢一個讀者") End If End If ActFlag = FalseEnd Sub(
20、11) 為工程添加一個新的窗體,將新窗體的“名稱”屬性改為“frmFindOneReader”,“Caption”屬性改為“查詢一個讀者”。(12) 在窗體上添加一個框架控件(Frame)和一個ADO數據控件(Adodc),在Frame1中添加一個命令按鈕(CommandButton)、一個標簽(Label)和一個文本框(TextBox)。(13) 修改frmFindOneReader窗體控件的屬性,見表5。表5 frmFindOneReader窗體控件屬性控件名稱屬性名稱屬性設置值Frame1 Caption輸入查詢條件Label1 Caption讀者編號Text1名稱TxtReaderid
21、TextCommand1名稱CmdFindCaption查詢Adodc1名稱AdodcVisibleFalse(14) 根據frmMain主界面中設置Adodc控件的方法來設置本窗體的Adodc的屬性,完成以上操作后frmFindOneReader窗體的效果如圖21所示。 圖21(15) 雙擊“查詢”按鈕,在代碼編輯窗口中添加以下代碼:Private Sub CmdFind_Click() Dim RecCount As Integer '判斷用戶是否輸入了讀者編號信息,如果沒有輸入信息,則發出提示退出子程序 If Trim(TxtReaderid.Text) = "&quo
22、t; Then MsgBox "查詢條件不能為空,請填寫!", , "提示" Exit Sub End If '根據讀者編號查詢讀者信息 Adodc.RecordSource = "select readerid as " & " 讀者編號" _ & ", readername as " & " 讀者姓名" & ",booknum as " _ & "借閱圖書冊數" & "
23、; from reader where readerid= " & "'" _ & Trim(TxtReaderid.Text) & "'" Adodc.Refresh '如果查到該讀者信息則釋放當前窗體,回到主界面在數據表格上顯示查到的讀者信息 RecCount = Adodc.Recordset.RecordCount If RecCount > 0 Then frmMain.AdodcTemp.RecordSource = "select readerid as "
24、 _ & " 讀者編號" & ", readername as " & " 讀者姓名" _ & ",booknum as " & "借閱圖書冊數" _ & " from reader where readerid= " _ & "'" & Trim(TxtReaderid.Text) & "'" frmMain.AdodcTemp.Refresh &
25、#39;將標志變量置為真 ActFlag = True Unload Me Else '如果沒有查到該讀者的信息則發出提示,退出子程序 MsgBox "查無此人!", , "提示" Exit Sub End IfEnd Sub5增加一個讀者(16) 選擇菜單“讀者管理增加一個讀者”,在代碼編輯窗口中添加以下代碼:Private Sub AddReader_Click() '將標志變量置為假 ActFlag = False '顯示增加一個讀者窗體 frmAddReader.Show vbModal If ActFlag Then &
26、#39;如果需要刷新數據表格,則顯示所有讀者信息 DispAllReader_Click End If ActFlag = FalseEnd Sub(17) 為工程添加一個新的窗體,講窗體的名稱屬性改為“frmAddReader”,Caption屬性改為“增加一個讀者”。(18) 在窗體上添加一個框架控件(Frame),然后在Frame1中添加一個命令按鈕,兩個標簽,兩個文本框和一個ADO數據控件(Adodc)。(19) 修改frmAddReader窗體控件的屬性,見表6。表6 frmAddReader窗體控件屬性控件名稱屬性名稱屬性設置值 Frame1 Caption 輸入數據 Label1
27、Caption 讀者編號 Label2Caption 讀者姓名Text1Text 名稱 TxtReaderidText2Text名稱 TxtReaderNameCommand1名稱 CmdSave Caption 保存Adodc1名稱 AdodcVisible False(20) 運用frmMain主界面中設置Adodc的方法來設置本窗體的Adodc,完成后的frmAddReader窗體效果如圖22所示。 圖22(21) 雙擊“保存”按鈕,在代碼編輯窗口中添加以下代碼:Private Sub CmdSave_Click() Dim RecCount As Integer '判斷是否輸入
28、了讀者編號和讀者姓名,如果沒有輸入信息,則發出提示并退出子程序 If Trim(TxtReaderid.Text) = "" Or Trim(TxtReaderName.Text) = "" Then MsgBox "請將內容填寫完整!", , "提示" Exit Sub End If '根據讀者編號信息查找該讀者是否已經存在 Adodc.RecordSource = "select * from reader where readerid=" _ & "'&q
29、uot; & Trim(TxtReaderid.Text) & "'" Adodc.Refresh '如果該讀者已經存在,則發出提示,并退出子程序 RecCount = Adodc.Recordset.RecordCount If RecCount > 0 Then MsgBox "已經存在此讀者編號,請重新設置!", , "提示" Exit Sub End If '向數據庫表"book"中添加新的讀者記錄 Adodc.RecordSource = "sele
30、ct * from reader" Adodc.Refresh Adodc.Recordset.AddNew Adodc.Recordset.Fields("readerid") = Trim(TxtReaderid.Text) Adodc.Recordset.Fields("readername") = Trim(TxtReaderName.Text) Adodc.Recordset.Fields("booknum") = 0 Adodc.Recordset.Update Adodc.Refresh '將標志變量置
31、為真 ActFlag = True Unload MeEnd Sub6刪除一個讀者(22) 選擇菜單“讀者管理刪除一個讀者”,在代碼編輯窗口中添加以下代碼:Private Sub DelReader_Click() '將標志變量置為假 ActFlag = False '顯示刪除一個讀者窗體 frmDelReader.Show vbModal '判斷是否需要刷新數據表格,如果需要則在主界面的數據表格中顯示所有的讀者信息 If ActFlag Then DispAllReader_Click End If ActFlag = FalseEnd Sub(23) 為工程添加一個
32、新的窗體,將新窗體的“名稱”屬性改為“frmDelReader”,“Caption”屬性改為“刪除一個讀者”。(24) 在窗體 上添加一個框架控件(Frame),在Frame1中添加一個命令按鈕、一個標簽、一個文本框和一個ADO數據控件。(25) 修改frmDelReader窗體控件的屬性,見表7。表7 FrmDelReader窗體控件屬性控件名稱屬性名稱屬性設置值Frame1Caption 輸入編號Label1Caption 讀者編號Text1名稱TxtReaderidTextCommand1名稱CmdDelCaption刪除Adodc1名稱AdodcVisibelFalse(26) 運用f
33、rmMain主界面中設置Adodc的方法來設置本窗體的Adodc,完成后的frmDelReader窗體效果如圖22所示。 圖22(27) 雙擊“刪除”按鈕,在代碼編輯窗口中添加以下代碼:Private Sub CmdDel_Click() Dim RecCount As Integer '判斷是否輸入了讀者編號信息,如果沒有輸入則發出提示并退出子程序 If Trim(TxtReaderid.Text) = "" Then MsgBox "請填入編號信息!", , "提示" Exit Sub End If '根據讀者編號
34、查找讀者信息 Adodc.RecordSource = "select * from reader where readerid=" _ & "'" & Trim(TxtReaderid.Text) & "'" Adodc.Refresh '如果沒有該讀者信息則提示"查無此人!"信息,退出子程序 RecCount = Adodc.Recordset.RecordCount If RecCount < 1 Then MsgBox "查無此人!"
35、, , "提示" Exit Sub End If '根據讀者編號信息從數據庫表"borrow"中查找該讀者的借閱記錄 Adodc.RecordSource = "select * from borrow where readerid=" _ & "'" & Trim(TxtReaderid.Text) & "'" Adodc.Refresh '如果存在該讀者的借閱記錄,提示"此人有書未歸還,故不能刪除!"信息,退出子程序
36、 RecCount = Adodc.Recordset.RecordCount If RecCount > 0 Then MsgBox "此人有書未歸還,故不能刪除!", , "提示" Exit Sub End If '從數據庫表"reader"中找到該讀者記錄,刪除 Adodc.RecordSource = "select * from reader where readerid=" _ & "'" & Trim(TxtReaderid.Text) &am
37、p; "'" Adodc.Refresh Adodc.Recordset.Delete Adodc.Refresh '將標志變量置為真 ActFlag = True Unload MeEnd Sub7顯示所有圖書(28) 選擇菜單 “圖書管理顯示所有圖書”,在代碼編輯窗口中添加以下代碼:Private Sub DispAllBook_Click() Dim RecCount As Integer '從數據庫表"book"中查找所有的圖書記錄 AdodcTemp.RecordSource = "select bookid
38、as " _ & " 圖書編號" & ", bookname as " & " 圖書名稱 " _ & ",bookstate as " & "此書是否已借出" & " from book " AdodcTemp.Refresh '如果查到的記錄數> 0則刷新數據表格顯示查到的圖書信息,否則提示"未查到任何圖書記錄!"信息 '并刷新數據表格顯示空表 RecCount = Adod
39、cTemp.Recordset.RecordCount If RecCount > 0 Then DisplayGrid ("顯示所有圖書") Else MsgBox "未查到任何圖書記錄!", , "提示" DisplayGrid ("顯示所有圖書") Exit Sub End IfEnd Sub8查詢單冊(29) 選擇菜單“圖書管理查詢單冊”,在代碼編輯窗口中添加以下代碼:Private Sub FindOneBook_Click() Dim RecCount As Integer '將標志變量置
40、為假 ActFlag = False '顯示查詢單冊窗體 frmFindOneBook.Show vbModal '判斷是否需要刷新數據表格 If ActFlag Then RecCount = AdodcTemp.Recordset.RecordCount If RecCount > 0 Then DisplayGrid ("查詢單冊") End If End If ActFlag = FalseEnd Sub(30) 為工程添加一個新的窗體,將新窗體”(名稱)”屬性改為”frmFindOneBook”,”caption”屬性改為“查詢單冊”。(31
41、) 在窗體添加一個框架控件(Frame)和一個ADO數據控件(Adodc),在” Frame1”中添加一個命令按鈕(CommandButton)、一個標簽(label)和一個文本框(textbox)。(32) 修改frmFindOneBook窗體控件的屬性如表8所示:表8 frmFindOneBook窗體控件屬性控件名稱屬性名稱屬性設置值Frame1Caption輸入查詢條件labelCaption圖書編號Text1名稱txtbookidtextCommand1名稱CmdfindCaption查詢Adodc1名稱Adodcvisiblefalse(33) 根據“frmMain”主界面中的設置“
42、Adodc”的方法來設置本窗體的“Adodc”的“connectionstring”屬性。(34) 雙擊“查詢”按鈕,在代碼編譯窗口中添加以下代碼:Private Sub CmdFind_Click() Dim RecCount As Integer '判斷是否輸入了圖書編號,如果沒有輸入信息,則發出提示,并退出子程序 If Trim(TxtBookid.Text) = "" Then MsgBox "查詢條件不能為空,請填寫!", , "提示" Exit Sub End If '根據圖書編號查找該圖書信息 Adodc
43、.RecordSource = "select bookid as " & " 圖書編號" _ & ", bookname as " & " 圖書名稱" & ", bookstate as " _ & " 此書是否已借出 " & " from book where bookid= " & "'" _ & Trim(TxtBookid.Text) & &quo
44、t;'" Adodc.Refresh '如果查到的記錄數> 0,則返回主界面在數據表格中顯示查到的圖書信息 RecCount = Adodc.Recordset.RecordCount If RecCount > 0 Then frmMain.AdodcTemp.RecordSource = "select bookid as " _ & " 圖書編號" & ", bookname as " & " 圖書名稱" _ & ", books
45、tate as " & " 此書是否已借出 " _ & " from book where bookid= " & "'" & Trim(TxtBookid.Text) _ & "'" frmMain.AdodcTemp.Refresh ActFlag = True Unload Me Else '若沒查到該圖書信息,則提示"查無此書!"信息,退出子程序 MsgBox "查無此書!", , "
46、提示" Exit Sub End IfEnd Sub9添加新書(35) 選擇菜單“圖書管理增加新書”,在代碼編輯窗口中添加以下代碼:Private Sub AddBook_Click() '將標志變量置為假 ActFlag = False '顯示增加新書窗體 frmAddBook.Show vbModal '判斷如果需要刷新數據表格,則在主界面中顯示所有的圖書信息 If ActFlag Then DispAllBook_Click End If ActFlag = FalseEnd Sub(36) 為工程添加一個新的窗體,將新窗體“(名稱)”屬性改為“frmA
47、ddBook”,“caption”屬性改為“增加新書”。(37) 在窗體上添加一個框架控件(frame),在“frame1”中添加一個命令按鈕(commandbutton)、兩個標簽(label)、兩個文本框(textbox)和一個ADO數據控件(Adodc),如下表所示:控件名稱屬性名稱屬性設置值Frame1Caption輸入數據Label1Caption圖書編號Label2Caption圖書名稱Text1名稱txtbookidtextText2名稱txtbooknametextCommand1名稱CmdsaveCaption保存Adodc1名稱Adodcvisiblefalse(38) 根
48、據”frmMain”主界面中的設置“Adodc”的方法來設置本窗體的“Adodc”的“connectionstring”屬性。(39) 雙擊“保存”按鈕,在代碼編輯窗口中添加以下代碼:Private Sub CmdSave_Click() Dim RecCount As Integer '判斷是否輸入了圖書編號和圖書名稱信息,如果沒有輸入則發出提示并退出子程序 If Trim(TxtBookid.Text) = "" Or Trim(TxtBookName.Text) = "" Then MsgBox "請將內容填寫完整!",
49、 , "提示" Exit Sub End If '根據圖書編號查找是否存在該圖書記錄,如果存在,則提示"已經存在此圖書編號,請重新設置!" '則提示退出子程序 Adodc.RecordSource = "select * from book where bookid=" & "'" & Trim(TxtBookid.Text) & "'" Adodc.Refresh RecCount = Adodc.Recordset.RecordCoun
50、t If RecCount > 0 Then MsgBox "已經存在此圖書編號,請重新設置!", , "提示" Exit Sub End If '在數據庫表"book"中添加該新書記錄 Adodc.RecordSource = "select * from book" Adodc.Refresh Adodc.Recordset.AddNew Adodc.Recordset.Fields("bookid") = Trim(TxtBookid.Text) Adodc.Recordse
51、t.Fields("bookname") = Trim(TxtBookName.Text) Adodc.Recordset.Fields("bookstate") = "否" Adodc.Recordset.Update Adodc.Refresh '將標志變量置為真 ActFlag = True Unload MeEnd Sub10刪除圖書(40) 選擇菜單“圖書管理刪除圖書“,在代碼編輯窗口中添加以下代碼:Private Sub DelBook_Click() '將標志變量置為假 ActFlag = False &
52、#39;顯示刪除圖書窗體 frmdelbook.Show vbModal '判斷是否需要刷新數據表格,如果需要的話則在數據表格中顯示所有的圖書記錄 If ActFlag Then DispAllBook_Click End If ActFlag = FalseEnd Sub(41) 為工程添加一個新的窗體,將新窗體“(名稱)”屬性改為“frmdelbook”,“caption”屬性改為“刪除圖書”。(42) 在窗體上添加一個框架控件(Frame),在”Frame1”中添加一個命令按鈕(commandbutton)、一個標簽(label)、一個文本框(textbox)和一個ADO數據控件
53、(Adodc),如下表所示:控件名稱屬性名稱屬性設置值Frame1Caption輸入編號Label1Caption圖書編號Text1名稱txtbookidTextCommand1名稱CmddelCaption刪除Adodc1名稱Adodcvisiblefalse(43) 根據“frmMain”主界面中的設置“Adodc”的方法來設置本窗體的“Adodc”的“connectionstring”屬性,完成以上操作后frmDelBook窗體效果如下圖所以:(44) 雙擊“刪除”按鈕,在代碼編輯窗口中添加以下代碼:Private Sub CmdDel_Click() Dim RecCount As I
54、nteger '判斷是否輸入圖書編號,如果沒有輸入數據,則發出提示并退出子程序 If Trim(TxtBookid.Text) = "" Then MsgBox "請填入編號信息!", , "提示" Exit Sub End If '根據圖書編號從數據庫表"book"中查找該圖書的記錄。 Adodc.RecordSource = "select * from book where bookid=" _ & "'" & Trim(TxtB
55、ookid.Text) & "'" Adodc.Refresh RecCount = Adodc.Recordset.RecordCount '如果沒有該圖書的信息,則提示"查無此書!"信息,退出子程序 If RecCount < 1 Then MsgBox "查無此書!", , "提示" Exit Sub End If '如果該圖書已經借出,則提示"此書尚未歸還,故不能刪除!"并退出子程序 If Adodc.Recordset.Fields("b
56、ookstate") = "是" Then MsgBox "此書尚未歸還,故不能刪除!", , "提示" Exit Sub End If '刪除該圖書記錄 Adodc.Recordset.Delete Adodc.Refresh '將標志變量置為真 ActFlag = True Unload MeEnd Sub11顯示所有借閱情況(45) 選擇菜單“借閱管理顯示所有借閱記錄”,進入代碼編輯窗口中添加代碼如下:Private Sub DispAllBor_Click() Dim RecCount As Integer '用多表連接查詢語句查詢所有的圖書借閱記錄 AdodcTemp.RecordSource = "select borrow.readerid as " _ & " 讀者編號 " & ",reader.readername as " & " 讀者姓名 &q
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 港口碼頭建設安全施工方案及措施
- 汽車制造項目經理部各崗位職責他
- JL1901年度供應鏈管理內部審核計劃
- 熱力管網施工安全文明施工措施
- 三年級上冊地方課程教學計劃推進他
- 2025年度幼兒園團支部團隊建設計劃
- 物流運輸警示教育懺悔錄心得體會
- 護理質量安全事件調查職責
- 教師信息技術教學方法創新計劃
- 期貨模擬交易心得體會及技術應用
- 心力衰竭患者常用食物含水量表
- 鎖骨下動脈竊血綜合征 (2)PPT
- 2022年人教八級下英語單詞英譯漢
- 大班社會《愛發脾氣的菲菲》課件
- 公路工程項目代建制管理辦法(218頁編制詳細)
- NX空間系統熱簡介復習課程
- 納米氧化鋅實驗報告(共9頁)
- 自粘聚合物改性瀝青防水卷材施工
- 青少年科技創新PPT
- 美麗鄉村片區內監理規劃范本
- 曉明煤礦副井過卷緩沖裝置安裝措施
評論
0/150
提交評論