




下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
軟件課程設計報告機房名稱機電信息樓606時間7月11日至7月19日學院信息工程學院專業班級信息1012姓名晏霞學號41050358指導教師張維存成績2023年7月說明軟件課程設計是本科教學重要的實踐教學環節,是提高學生應用計算機能力的重要措施。所有參加軟件課程設計教學活動的學生都必須撰寫設計報告。軟件課程設計報告的質量反映了軟件課程設計的教學質量,它是評定軟件課程設計成績的主要依據之一。不交設計報告者不得參加實習成績評定。指導教師必須對學生的設計報告寫出評語并在相應位置給出成績并簽字,否那么本設計報告無效。設計報告要求條理清晰,內容詳盡,數據準確,字數不少于5000字。軟件課程設計活動結束后請將本報告上交學院存檔保存。軟件課程設計報告一.設計題目書是知識的海洋,圖書館是書的海洋,我們都知道,圖書館數目繁多,對圖書館書籍的管理是一項龐大的任務。只有把圖書館的書目管理好,才能保障學生正常學習和閱讀。因此我們要應用我們所學的知識,創立一個合理,全面,并且簡單,易于使用的圖書館書籍管理系統。首先,我們創立的圖書管理系統要求界面美觀,讓廣闊讀者在點擊進入系統時,有滿目一新的感覺;然后,為了方便讀者查詢,借閱,我們設計的圖書管理系統要實現以下功能:讀者通過此系統可以進行圖書館書目的總體瀏覽;圖書館管理員可以通過此系統新增或刪除書目記錄;在系統主控界面可以對所有書目按照圖書編號進行排序;讀者可以直接點擊查詢圖書銷售情況和圖書分類;讀者可以通過輸入一本書的書名,進行精確查找。二.任務要求1、自主選擇確定設計題目,并設計確定應用程序的根本框架。2、根據選定的課程實踐內容,進行應用程序的設計工作。3、在應用程序規劃設計過程中,在根本功能要求之外,設計增加新的操作功能。4、結束時,將進行現場展示和講解,演示設計完成的應用程序并進行成績評定。5、使用VC++6.0作為設計活動的計算機工具環境。6、認真完成應用程序的設計、調試與測試,實現程序運行流暢,不能存在或出現編譯錯誤和運行錯誤7、學生應規劃應用程序的系統結構,確定應用程序的根本功能。應用程序至少具有程序主界面〔歡送界面〕、用戶登錄身份驗證、系統主菜單、以及各功能模塊等,要求不少于5個程序模塊。8,實驗報告文檔中需要對所選的應用課題整體描述;應用程序的功能規劃介紹及結構示意圖;應用程序主要功能模塊介紹及操作使用說明;開始菜單及主要菜單的運行情況;主程序及主要程序代碼清單;計算機應用實踐課程的總結與體會。三.系統總體方案系統總體設計包括以下三個層次:系統主界面分為四個區:記錄編輯區,查詢區,記錄操作區,顯示信息區在記錄操作區可以通過按鈕實現顯示下一條記錄,上一條記錄;通過單擊“新增記錄〞按鈕,彈出“新增記錄〞對話框,在“新增記錄〞對話框中輸入新的書目記錄,單擊確定便可新增一條記錄;通過單擊“刪除記錄〞按鈕,可以將記錄編輯區當前顯示的記錄刪除;通過單擊“排序記錄〞按鈕,可以在顯示信息區顯示排序后的書目;通過單擊“第一條記錄按鈕〞,可以在記錄編輯區顯示書目編號排在第一的書目;在查詢區,點擊“圖書銷售〞,彈出“圖書銷售〞對話框,對話框中顯示圖書ID,出售價格,出售數量三大數據;在查詢區,點擊“圖書分類〞,彈出“圖書分類〞對話框,對話框中顯示分類ID和分類名稱;在記錄操作區“書目檢索〞編輯框中輸入要查詢的書的名稱,點擊“查詢〞按鈕,便會在記錄編輯區顯示所檢索書目的詳細信息。以上為圖書館書籍管理系統的功能詳細解說,下列圖為功能執行流程圖:系統主控界面系統主控界面書目瀏覽書目記錄管理快速運用上一記錄下一記錄增加記錄刪除記錄排序記錄跳回到第一條記錄書目查詢圖書銷售情況查詢圖書分類查詢書目精確檢索在記錄編輯區顯示該條記錄在記錄編輯區顯示該條記錄翻開增加數據對話框刪除當前記錄編輯區顯示記錄在顯示信息區按順序顯示排列后的記錄點擊直接跳轉到第一條書目翻開圖書銷售對話框翻開圖書分類對話框查詢并在記錄編輯區顯示要檢索的書目四.系統模塊描述1.本系統主控界面如圖:該系統主要具有增加記錄,刪除記錄,排序記錄,顯示上一記錄,下一記錄,第一條記錄,查詢記錄及顯示圖書銷售,圖書分類數據表和全部圖書根本信息的功能。2.“上一記錄〞模塊:當點擊“上一記錄〞按鈕,記錄編輯區的數據自動顯示成為上一條的信息。當數據已經是第一條的時候,會出現下“圖1〞提示對話框:圖1圖23.“下一記錄〞模塊:當點擊“下一記錄〞按鈕時,記錄編輯區的數據會自動顯示成為下一條的信息。當數據已經是最后一條的紀錄時,會出現上“圖2〞提示對話框:4.“增加記錄〞模塊:當點擊“增加記錄〞按鈕時,界面會自動的彈出如下對話框:此時用戶只需要自己手動的在各自編輯框中修改數據,點擊確定便可以完成增加功能;如果要放棄增添數據,只需要單擊“取消〞按鈕便可以執行操作了。單擊確定后,可以在主界面,通過上下翻記錄,查看剛剛增加的數據。5.“刪除記錄〞模塊:當點擊“刪除記錄〞按鈕時,界面所顯示的數據就會被從數據庫中刪除,會出現如下效果:再次點擊查詢時,會出現提示框〔如下列圖〕:如此刪除功能就得以實現了。6.“排序記錄〞模塊:當點擊“排序記錄〞按鈕時,系統會自動按照圖書編號的大小順序改變記錄的順序,此時再單擊上下記錄時會發現其順序發生變化,而且主頁面會顯示序號最小的記錄:執行排序功能之前界面執行排序功能之后界面7.“第一條記錄〞模塊:顧名思義“第一條記錄〞按鈕執行的功能就是將主界面的數據返回第一條記錄。其效果如下列圖:8.“圖書銷售〞模塊:此模塊主要功能是應用“圖書銷售〞選項按鈕,用于調用圖書銷售對話框。調用的圖書銷售的對話框用于顯示圖書銷售數據表的相關信息。其效果如下圖:當點擊“確定〞按鈕時,系統會自動返回主界面。9.“圖書分類〞模塊:此模塊主要功能是應用“圖書分類〞選項按鈕,用于調用圖書分類對話框。調用的圖書分類對話框用于顯示圖書分類數據表的相關信息。該模塊主要是用于圖書分類編碼查詢,他是前面兩個模塊的輔助功能模塊其效果如下圖:當單擊“確定〞按鈕時,系統會自動返回主界面。10.“查詢〞模塊:此模塊主要功能是通過在如下編輯框中輸入圖書名稱進行圖書資料查詢。點擊“查詢〞,其執行效果如下列圖所示:假設沒有該記錄那么顯示如下效果:該模塊主要是插入RemoteData和DBGrid控件,當登錄界面時,會顯示出幅員書信息數據表的內容。讓用戶一目了然的看到其系統中已儲存的記錄。其效果如下圖:五.主要程序清單上一記錄voidCMyView::OnButtonprev(){ //TODO:Addyourcontrolnotificationhandlercodeherem_pSet->MovePrev();if(m_pSet->IsBOF()){MessageBox("記錄已經在第一條!");m_pSet->MoveNext();UpdateData(FALSE);return;}UpdateData(FALSE);}下一記錄voidCMyView::OnButtonnext(){//TODO:Addyourcontrolnotificationhandlercodeherem_pSet->MoveNext();if(m_pSet->IsEOF()){MessageBox("記錄已經在最后一條!");m_pSet->MovePrev();UpdateData(FALSE);return;}UpdateData(FALSE);} 增加記錄voidCMyView::OnButtonaddnew(){CADDDlgdlg; dlg.m_BH=m_pSet->m_bh; dlg.m_FNH=m_pSet->m_fnh; dlg.m_BOOKNAME=m_pSet->m_bookname;//傳送到各自的成員變量中TIME=m_pSet->m_time; dlg.m_AUTHER=m_pSet->m_auther;dlg.m_PRICE=m_pSet->m_price; dlg.m_PUBNAME=m_pSet->m_pubname; dlg.m_PUBADDR=m_pSet->m_pubaddr;if(dlg.DoModal()==IDOK) { m_pSet->AddNew(); m_pSet->m_bh=dlg.m_BH; m_pSet->m_fnh=dlg.m_FNH; m_pSet->m_bookname=dlg.m_BOOKNAME; m_pSet->m_time=dlg.m_TIME; m_pSet->m_auther=dlg.m_AUTHER; m_pSet->m_price=dlg.m_PRICE; m_pSet->m_pubname=dlg.m_PUBNAME; m_pSet->m_pubaddr=dlg.m_PUBADDR; m_pSet->Update(); m_pSet->Requery(); } }刪除記錄voidCMyView::OnButtondelete(){m_pSet->Delete();m_pSet->MoveNext();if(m_pSet->IsEOF())m_pSet->MoveLast();if(m_pSet->IsEOF())m_pSet->SetFieldNull(NULL);UpdateData(FALSE);}排序記錄voidCMyView::OnButtonpdate(){m_pSet->Close();m_pSet->m_strSort="圖書ID";m_pSet->Open();UpdateData(FALSE);//m_pSet->CancelUpdate();}第一條記錄voidCMyView::OnButtonfirst(){m_pSet->MoveFirst();if(m_pSet->IsBOF()){MessageBox("記錄已經在第一條!");m_pSet->MoveNext();UpdateData(FALSE);return;}UpdateData(FALSE);}圖書銷售voidCMyView::OnRadio1(){ CMyDlg1MyDlg1;//進行調用圖書銷售對話框 MyDlg1.DoModal();}圖書分類voidCMyView::OnRadio2(){ //TODO:Addyourcontrolnotificationhandlercodehere CMyDlg2MyDlg2;//進行調用圖書分類對話框 MyDlg2.DoModal();}查詢記錄voidCMyView::OnButtonQuery(){UpdateData();m_query.TrimLeft(); if(m_query.IsEmpty()) { MessageBox("要查詢的圖書名稱不能為空"); return; } if(m_pSet->IsOpen()) m_pSet->Close();//如果記錄集翻開,那么先關閉 m_pSet->m_strFilter.Format("圖書名稱='%s'",m_query); //用來指定查詢條件 m_pSet->m_strSort="圖書名稱"; m_pSet->Open(); if(!m_pSet->IsEOF())//如果翻開記錄集,有記錄 UpdateData(FALSE);//自動更新表中控件顯示的內容 else MessageBox("沒有找到你要查找的圖書!");}增加記錄的對話框中確定按鈕voidCADDDlg::OnOK(){ CDialog::OnOK();UpdateData(TRUE);}圖書銷售對話框//MyDlg1.cpp:implementationfile//#include"stdafx.h"#include"圖書出版管理系統.h"#include"MyDlg1.h"#ifdef_DEBUG#definenewDEBUG_NEW#undefTHIS_FILEstaticcharTHIS_FILE[]=__FILE__;#endif///////////////////////////////////////////////////////////////////////////////CMyDlg1dialogCMyDlg1::CMyDlg1(CWnd*pParent/*=NULL*/) :CDialog(CMyDlg1::IDD,pParent){ //{{AFX_DATA_INIT(CMyDlg1) //NOTE:theClassWizardwilladdmemberinitializationhere //}}AFX_DATA_INIT}voidCMyDlg1::DoDataExchange(CDataExchange*pDX){ CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CMyDlg1) //NOTE:theClassWizardwilladdDDXandDDVcallshere //}}AFX_DATA_MAP}BEGIN_MESSAGE_MAP(CMyDlg1,CDialog) //{{AFX_MSG_MAP(CMyDlg1) //NOTE:theClassWizardwilladdmessagemapmacroshere //}}AFX_MSG_MAPEND_MESSAGE_MAP()///////////////////////////////////////////////////////////////////////////////CMyDlg1messagehandlers圖書分類對話框//MyDlg2.cpp:implementationfile//#include"stdafx.h"#include"圖書出版管理系統.h"#include"MyDlg2.h"#ifdef_DEBUG#definenewDEBUG_NEW#undefTHIS_FILEstaticcharTHIS_FILE[]=__FILE__;#endif///////////////////////////////////////////////////////////////////////////////CMyDlg2dialogCMyDlg2::CMyDlg2(CWnd*pParent/*=NULL*/) :CDialog(CMyDlg2::IDD,pParent){ //{{AFX_DATA_INIT(CMyDlg2) //NOTE:theClassWizardwilladdmemberinitializationhere //}}AFX_DATA_INIT}voidCMyDlg2::DoDataExchange(CDataExchange*pDX){ CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CMyDlg2) //NOTE:theClassWizardwilladdDDXandDDVcallshere //}}AFX_DATA_MAP}BEGIN_MESSAGE_MAP(CMyDlg2,CDialog) //{{AFX_MSG_MAP(CMyDlg2) //NOTE:theClassWizardwilladdmessagemapmacroshere //}}AFX_MSG_MAPEND_MESSAGE_MAP()///////////////////////////////////////////////////////////////////////////////CMyDlg2messagehandlers系統其他進程程序清單//圖書出版管理系統View.cpp:implementationoftheCMyViewclass//#include"stdafx.h"#include"圖書出版管理系統.h"#include"圖書出版管理系統Set.h"#include"圖書出版管理系統Doc.h"#include"圖書出版管理系統View.h"#include"ADDDlg.h"#include"MyDlg1.h"#include"MyDlg2.h"#ifdef_DEBUG#definenewDEBUG_NEW#undefTHIS_FILEstaticcharTHIS_FILE[]=__FILE__;#endif///////////////////////////////////////////////////////////////////////////////CMyViewIMPLEMENT_DYNCREATE(CMyView,CRecordView)BEGIN_MESSAGE_MAP(CMyView,CRecordView) //{{AFX_MSG_MAP(CMyView) ON_BN_CLICKED(IDC_BUTTONADDNEW,OnButtonaddnew) ON_BN_CLICKED(IDC_BUTTONDELETE,OnButtondelete) ON_BN_CLICKED(IDC_BUTTONPDATE,OnButtonpdate) ON_BN_CLICKED(IDC_BUTTONFIRST,OnButtonfirst) ON_BN_CLICKED(IDC_BUTTONPREV,OnButtonprev) ON_BN_CLICKED(IDC_BUTTONNEXT,OnButtonnext) ON_BN_CLICKED(IDC_RADIO1,OnRadio1) ON_BN_CLICKED(IDC_RADIO2,OnRadio2) ON_BN_CLICKED(IDC_BUTTON_QUERY,OnButtonQuery) //}}AFX_MSG_MAP //Standardprintingcommands ON_COMMAND(ID_FILE_PRINT,CRecordView::OnFilePrint) ON_COMMAND(ID_FILE_PRINT_DIRECT,CRecordView::OnFilePrint) ON_COMMAND(ID_FILE_PRINT_PREVIEW,CRecordView::OnFilePrintPreview)END_MESSAGE_MAP()///////////////////////////////////////////////////////////////////////////////CMyViewconstruction/destructionCMyView::CMyView() :CRecordView(CMyView::IDD){ //{{AFX_DATA_INIT(CMyView) m_pSet=NULL; m_query=_T(""); //}}AFX_DATA_INIT //TODO:addconstructioncodehere}CMyView::~CMyView(){}voidCMyView::DoDataExchange(CDataExchange*pDX){ CRecordView::DoDataExchange(pDX); //{{AFX_DATA_MAP(CMyView) DDX_FieldText(pDX,IDC_EDITAUTHER,m_pSet->m_auther,m_pSet); DDX_FieldText(pDX,IDC_EDITBH,m_pSet->m_bh,m_pSet); DDX_FieldText(pDX,IDC_EDITBOOKNAME,m_pSet->m_bookname,m_pSet); DDX_FieldText(pDX,IDC_EDITFNH,m_pSet->m_fnh,m_pSet); DDX_FieldText(pDX,IDC_EDITPRICE,m_pSet->m_price,m_pSet); DDX_FieldText(pDX,IDC_EDITPUBADDR,m_pSet->m_pubaddr,m_pSet); DDX_FieldText(pDX,IDC_EDITPUBNAME,m_pSet->m_pubname,m_pSet); DDX_FieldText(pDX,IDC_EDITTIME,m_pSet->m_time,m_pSet); DDX_Text(pDX,IDC_EDIT_QUERY,m_query); //}}AFX_DATA_MAP}BOOLCMyView::PreCreateWindow(CREATESTRUCT&cs){ //TODO:ModifytheWindowclassorstylesherebymodifying //theCREATESTRUCTcs returnCRecordView::PreCreateWindow(cs);}voidCMyView::OnInitialUpdate(){ m_pSet=&GetDocument()->m_mySet; CRecordView::OnInitialUpdate(); GetParentFrame()->RecalcLayout(); ResizeParentToFit();}///////////////////////////////////////////////////////////////////////////////CMyViewprintingBOOLCMyView::OnPreparePrinting(CPrintInfo*pInfo){ //defaultpreparation returnDoPreparePrinting(pInfo);}voidCMyView::OnBeginPrinting(CDC*/*pDC*/,CPrintInfo*/*pInfo*/){ //TODO:addextrainitializationbeforeprinting}voidCMyView::OnEndPrinting(CDC*/*pDC*/,CPrintInfo*/*pInfo*/){ //TODO:addcleanupafterprinting}///////////////////////////////////////////////////////////////////////////////CMyViewdiagnostics#ifdef_DEBUGvoidCMyView::AssertValid()const{ CRecordView::AssertValid();}voidCMyView::Dump(CDumpContext&dc)const{ CRecordView::Dump(dc);}CMyDoc*CMyView::GetDocument()//non-debugversionisinline{ ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CMyDoc))); return(CMyDoc*)m_pDocument;}#endif//_DEBUG///////////////////////////////////////////////////////////////////////////////CMyViewdatabasesupportCRecordset*CMyView::OnGetRecordset(){ returnm_pSet;}///////////////////////////////////////////////////////////////////////////////CMyViewmessagehandle
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 高效手勢交互系統的設計與優化-洞察闡釋
- 長江藝術工程職業學院《體育-桌式足球(三)》2023-2024學年第二學期期末試卷
- 傷濕止痛膏的創新藥用成分與市場前景分析-洞察闡釋
- 數據可視化在網絡設備運維中的應用-洞察闡釋
- 青海民族大學《英語視聽一》2023-2024學年第二學期期末試卷
- 西寧城市職業技術學院《中西醫結合外科學》2023-2024學年第二學期期末試卷
- 工業機器人協作-洞察闡釋
- 虛擬藝術治療在心理健康評估中的應用-洞察闡釋
- 邊緣計算環境下工業質量控制方案-洞察闡釋
- 智能化市場調研策略-洞察闡釋
- 兵團精神試題及答案
- 村寨垃圾收費管理制度
- 江蘇保安證考試題及答案
- 智聯銀行筆試題庫及答案
- 高校學生資助誠信教育主題班會
- 2025年入團考試評委提問的常見問題及答案
- 貿易咨詢服務合同協議
- 施工現場常見的安全隱患排查及試題與答案
- GA/T 2161-2024法庭科學非法集資類案件資金數據分析規程
- 食管癌病例分析 手術、化療與放療方案優化
- 銀行安全培訓課件
評論
0/150
提交評論