




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软件课程设计报告机房名称机电信息楼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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025餐饮服务合作协议书合同范本
- 2025合同范本:劳动合同模板
- 2025关于农村房屋买卖合同范文
- 管理入股合同协议书范本
- 2025资产管理公司劳动合同细则
- 防汛应急服务合同协议书
- 清沟工程合同协议书
- 框架合同安全协议书范本
- 景区管理培训合同协议书
- 集装箱转租合同协议书
- 【跨国并购风险问题分析文献综述2700字】
- 偏瘫科普宣教
- 中医类诊所规章制度与岗位职责
- 酒驾延缓处罚申请书
- 2023年国家开放大学《财务报表分析》形成性考核(1-4)试题答案解析
- 2022年1月福建化学会考试卷
- 《数据选择器》课件
- 2023年贵州省遵义市中考地理试卷真题(含答案)
- 幼儿园故事课件:《小马过河》
- 物料提升机基础专项施工方案正文
- 工程机械管理制度
评论
0/150
提交评论