课程设计-通用高校科研管理系统 - 图文

更新时间:2023-12-17 02:19:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

淮阴工学院

面向对象程序设计

课程设计报告

选题名称: 通用高校科研管理系统 系(院): 计 算 机 工 程 系 专 业: 计算机科学与技术 班 级: 计算机1061 姓 名: 薛为龙 学 号: 1061301107 指导教师: 于永彦 学年学期: 2007 ~ 2008 学年 第 1 学期

2008 年 1 月 13 日

摘要:

近年来,随着各个高校校园网络建设的全面推进和科研力度的进一步加大,旧模式下的科研管理信息系统越来越不适应新形势的需要。重新构造科研管理系统,使科研管理工作实现实时、动态,达到科研管理的微机化、信息化、网络化,提高科研管理效率。随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。要高效率地把活动有机地组织起来,就必须加强管理,即加强对组织内部的各种资源的有效管理,建立与自身特点相适应的管理信息系统。本次课程设计是开发一个通用高校科研管理系统的过程。创建了一套行之有效的方案。介绍了管理系统的系统分析部分,包括可行性分析、业务流程分析等;系统设计部分主要介绍了系统功能设计和数据库设计及代码设计;系统实现部分说明了几个主要模块的算法,并附带了一些主要的窗口和程序。

关键词:数据库;C++面向对象程序设计;对象和类

目 录

1 课题综述.................................................................................................................... 1

1.1 课题来源与意义 ....................................................... 1 1.2 预期目标 ............................................................. 1 1.3 面对的问题 ........................................................... 2 1.4 需解决的关键技术 ..................................................... 2

2系统分析..................................................................................................................... 2

2.1 涉及的知识基础 ....................................................... 2 2.2 解决问题的基本思路 ................................................... 2

3系统设计..................................................................................................................... 3

3.1 数据库设计 ........................................................... 4 3.2 制作一个系统封面的位图文件 ........................................... 4 3.3 创建“通用高校科研管理系统”应用程序基本框架 ......................... 4 3.4 制作应用系统封面 ..................................................... 4 3.5 系统主界面的制作 ..................................................... 5 3.6制作“科研人员管理”对话框 ........................................... 6

4 程序调试.................................................................................................................... 8 5代码编写..................................................................................................................... 8

5.1.应用系统封面的程序代码 ............................................... 8 5.2主控界面对话框头文件 ................................................. 9 5.3参加人员管理对话框程序代码 ........................................... 9 5.4获奖情况管理对话框程序代码 ........................................... 9 5.5学术论文管理对话框程序代码 .......................................... 10 5.6科研人员管理对话框程序代码 .......................................... 10 5.7科研项目管理对话框程序代码 .......................................... 10 5.8辅助编码管理对话框程序代码 .......................................... 10 5.9学术论文管理对话框程序代码 .......................................... 11 5.10学术著作管理对话框程序代码 ......................................... 11

6运行与测试............................................................................................................... 11 总 结............................................................................................................................ 16 致 谢............................................................................................................................ 17 参考文献...................................................................................................................... 18

《面向对象程序设计课程设计报告》

1 课题综述

课题来源和意义,预期目标,面对问题,需要解决的关键技术等。

1.1 课题来源与意义

随着社会的发展,在信息社会中,信息的获取、处理、交流和决策都需要高质量的计算机软件来完成。高校科研是高校面临的一项重要任务,高校科研管理内容也比较复杂,科研涉及的内容极为广泛,面临项目、资金和人员管理。因此制作一个高校科研管理系统统软件是十分重要和必要的。科学研究是高等学校的重要工作之一,对于一所高等院校来说,学科门类多,科研项目及成果所涉及科学领域较广,其数量亦比较大,这给管理造成了一定的困难,通过计算机进行管理无疑是最科学和最有效的方法,一方面可提高工作效率和工作质量,同时又便于部门之间进行信息交流。科研管理信息系统是一个由人、计算机组成的能进行科研信息的搜集、传递、存贮、加工、维护和使用的系统,该系统能够实时反映高校的科研活动,为日常事务的处理和管理职能提供支持。在人类发明计算机之前,管理信息系统完全是手工作业,随着计算机技术的产生和发展,管理信息系统的结构发生了很大的改变,计算机强大的数据处理能力及现代化的网络通讯技术大大提高了管理信息系统的效能。作为高校的科研管理人员要分清楚哪些信息适合计算机处理,哪些信息更适合于手工作业,在工作中将两种方式有机地结合,互相取长补短,以求达到最佳的管理方式。因此,使科研管理工作更加规范化、科学化,建设一个科研管理信息系统已显得非常重要。高校科研管理信息系统通常包括科研人员信息管理、科研项目管理、科研成果管理、学术交流管理、业绩考核管理等。

1.2 预期目标

看书了解通用管理科研管理系统制作的方法,了解制作的整体思路。学会制作界面,系统,数据库的一些方法。从而利用C++面向对象的知识来编写出程序代码完善程序内容。完成课本内容,做好实验,完成课程设计。熟练掌握运用Visual C++6.0建立对话框、制作菜单、利用工具栏添加普通控件及添加ActiveX控件。熟练掌握利用类向导建立对话框的类以及控件的函数,并编写代码。

尽可能了解并运用Visual C++6.0提供的数据库开发环境,使课题做的完美。

1

《面向对象程序设计课程设计报告》

1.3 面对的问题

如何实现在MFC Appwizard创建基本的应用程序,在基本的应用程序中添加对话框,添加ActiveX控件,创建菜单和菜单调用对话框及使用ADO Data和Data Grid与Access数据库进行链接并在运行时在Data Grid显示Access表中的数据。

1.4 需解决的关键技术

菜单调用对话框及使用ADO Data和Data Grid与Access数据库进行链接并在运行时在Data Grid显示Access表中的数据。

在菜单调用对话框实现中一定要在主控界面的程序代码前加入所调用的对话框创建的类头文件。

2系统分析

2.1 涉及的知识基础

函数,数据库,对话框,控件,菜单,类等等。

2.2 解决问题的基本思路

系统封面可以控制系统的进入,如果进入系统主控界面,通过系统主控界面可以调用系统的各个功能模块。系统功能模块如图2-1所示。

系统启动画面 系统主控界面

科研人员情况管理 科研项目管理 获奖情况管理 参加人员管理 科研论文管理 学术著作管理 学术期刊查询 项目编码索引 图2-1系统功能模块图

2

《面向对象程序设计课程设计报告》

3系统设计

制作一个系统封面,该系统启动封面出现后再确定是否进入系统主控界面。其系统启动画面如图3-1所示:

图3-1 应用系统封面

系统封面可以控制系统的进入,如果进入系统主控界面,通过系统主控界面可以调用系统的各个功能模块。系统功能模块如图3-2所示。

系统功能模块也可以由系统主控界面所体现,如图3-2所示。

图3-2主控界面

3

《面向对象程序设计课程设计报告》

3.1 数据库设计

创建 一个数据库,含“科研人员简历表”、“科研项目情况表”、“项目参加人员表”、“获奖情况表”、“学术论文登记表”、“学术期刊表”、“辅助编码表”等。

3.2 制作一个系统封面的位图文件

将制作的一个对话框作为系统封面,并在系统封面上加入位图文件。

3.3 创建“通用高校科研管理系统”应用程序基本框架

基本框架制作过程如下: 1.启动VC++。

2.单击“文件|新建?”菜单项,出现新建工程类型对话框,在工程对话框中选择MFCAppWizard(EXE)工程类型。

3.输入工程名为“通用高校科研管理系统”并选择Win32平台类型。 4.单击“确定”,进入文档类型设置对话框。 5.选择“基本对话框”类型。

6.单击“完成”,出现基本对话框的全部信息。

3.4 制作应用系统封面

其步骤如下:

1.将提示文本框“TODO:在这个对话框里设置表格控制。”放入两个新的命令按扭,设置它们的相关属性。

2.在对话框IDD_MY_DLALOG中放入一个图片控件,并加载位图文件。其中,两个命令按扭控件的属性设置如表3.1所示。

表3.1命令按扭对象的基本属性 ID IDC_BUTTONENTER IDC_BUTTONEXIT 标题内容 进入系统 退出系统 3.在两个命令按扭中,其中一个用于退出系统结束整个系统操作,另外一个用于进入系统。

“进入系统” 命令按扭的过程代码如下所示:

4

《面向对象程序设计课程设计报告》

void CMyDlg::OnButtonenter() {

CMainDlg MainDlg; MainDlg.DoModal(); }

“退出系统” 命令按扭的过程代码如下所示: void CMyDlg::OnButtonexit() {

OnOK(); }

3.5 系统主界面的制作

其步骤如下:

1.在VC++主菜单中单击“插入|资源Dialog”菜单项,确认后即在工程视图选项卡中增加了一个新的对话框IDD_MY_DLALOG1。

2.将新的对话框IDD_MY_DLALOG1标题属性改“高校科研管理主控界面”。 3.在对话框中放入一个图片控件,并加载位图文件。 4.“OK”和“CANCLE” 命令按扭删除。

5.在对话框中放入一个状态条控件IDC_SBARCTRL1。 制作一个菜单文档并与主控界面对话框进行连接。 其菜单制作过程如下:

1.在VC++主菜单中单击“插入|资源|Menu“菜单项,确认后即在工程视图选项卡中增加了一个新的菜单文档IDR_MENU1。

2.双击该文档,出现菜单设计器,在菜单设计器中设计每一个主菜单和下拉菜单即可。其中所有的菜单条目如表3.2 所示 。

表3.2菜单及下拉菜单

ID ID_Menu_KYRY

5

标题内容 科研人员管理 《面向对象程序设计课程设计报告》

科研人员管理 科研项目管理 ID_Menu_KYXM ID_Menu_HJQK ID_Menu_KYNW ID_Menu_XSZZ ID_Menu_XSQK ID_Menu_XMBM ID_Menu_CJRY 项目管理 获奖情况 获奖项目 科研论文管理 科研论文 学术著作管理 学术著作 学术期刊查询 学术期刊查询 项目编码查询 项目编码查询 参加人员管理 参加人员管理 菜单文档一创建,就需要一个对话框与之连接,成为该对话框的一个组合部分,这里创建的菜单就需要与新创建的主对话框进行连接。

3.在对话框的通用属性选项卡打开“菜单“列表框,选择一个菜单文档进行相关联。

3.6制作“科研人员管理”对话框

3.6.1 增加对话框资源与插入控件对象

首先增加“科研人员管理”对话框。其操作如下:

1.C++主菜单中单击“插入|资源Dialog“菜单项,确认后即在工程视图选项卡中增加了一个新的对话框IDD_MY_DLALOG1。

2.的对话框IDD_DLALOG1的标题属性改“科研人员管理“;而资源索引号修改为:IDD_DLALOGKYRY。

3.K”和“CANCLE” 命令按扭删除。

4.话框中插入一个ADO数据源控件IDC_ADODC1。 5.话框中插入一个数据表格控件IDC_DATAGRID1。 3.6.2 为“科研人员管理”对话框创建新类并进行声明

“科研人员管理”对话框是工程中新增加的新的资源,因此必须为它创建一个新类并加以声明,将新类命名“CKyryDlg”。

在IDD_MainDlg的实现文件中加以声明,其声明过程如下:

6

《面向对象程序设计课程设计报告》

#include”KyryDlg.h”

3.6.3 为“科研人员管理”对话框引入数据源

其操作如下:

为插入对话框中的ActiveX控件ADODC1设置基本属性,如表3.3所示

表3.3 ADODC1控件对象的基本属性 ID 显示 标题 ConnectionString RecordSource CommandType IDC_ADODOC1 YES 浏览查询科研人员 DSN=科研管理数据源 科研人员简历表 2-Table Command Type 其中ADODC1控件属性中的属性设置过程如下:

1.用鼠标右键单击ADODC1控件,出现一个属性设置页面,将该页面切到控制.属性页面,在控制属性页面中选择UseODCDataSourceName, 单击New,在出现的数据源对话框中选择“本地机的用户数据源”。

2.单击“下一步”,在出现的数据源驱动程序对话框中选择“Microsoft Access数据源驱动程序”。

3.单击“下一步”,出现完成安装数据源设置的过程。 4.单击“下一步”,出现一个数据源设置对话框。

5.单击select,出现一个打开文件对话框,在对话框中选择创建的数据源。 6.单击OK。

7.ADODC1属性设置选项卡页面切换到“记录源”,为ADODC1设置数据源命令类型和数据表文件。

3.6.4 为“科研人员管理”对话框引入表格控件

表格控件的基本属性,如表3.4所示

表3.4 DATAGRID1控件对象的基本属性 属性 ID 显示 标题 DataSource AllowAddNew AllowArrows

7

属性内容 IDC_DATAGRID1 YES 科研人员信息编辑表 IDC_ADODC1 True True

《面向对象程序设计课程设计报告》

AllowDelete AllowUpdata True True 3.6.5 为主对话框的菜单条目调用对话框

其操作如下:

1.在工程视图选项卡中双击IDD_MainDlg。

2.用鼠标右键单击IDD_MainDlg对话框,出现一个快键菜单。 3.在快键菜单中单击“创建类向导”。

4.在出现的消息映射选项卡,选择ID_Menu_KYRY菜单条目,并选择消息类型为COMMAND类型,即命令类型,则激活AddFunction。

5.单击AddFunction,出现菜单函数定义界面。 6.单击EditCode编制过程代码,其过程代码如下:

void CMainDlg::OnMenuKYRY() {

CMkyryDlg KyryDlg; KyryDlg.DoModal();

}

4 程序调试

程序代码不复杂,但对话框过多,需要创建很多类,在编写程序代码时时常忘记加入类的头文件,致使在程序运行时无法识别类导致程序运行出错。在创建类时会出现错误而无法得知,致使在程序运行时出错,而且又无法删除类。需要很细心的去创建类,加入类的头文件。

5代码编写

5.1.应用系统封面的程序代码

首先,加入“高校科研管理主控界面”的头文件: #include \

8

《面向对象程序设计课程设计报告》

编写“进入系统” 命令按扭的过程代码: 运行程序

void CMyDlg::OnButtonenter() {

CMainDlg MainDlg; MainDlg.DoModal(); }

进入主控界面 退出整个系统 进入系统 退出系统 编写“退出系统” 命令按扭的过代码程: void CMyDlg::OnButtonexit() {

OnOK(); }

图5-1系统封面流程图

5.2主控界面对话框头文件

#include \#include \#include \#include \#include \#include \#include \#include \

5.3参加人员管理对话框程序代码

void CMainDlg::OnMenuCJRY() {

CCjryDlg CjryDlg; CjryDlg.DoModal(); }

5.4获奖情况管理对话框程序代码

void CMainDlg::OnMenuHJQK()

9

《面向对象程序设计课程设计报告》

{

CHjqkDlg HjqkDlg; HjqkDlg.DoModal(); }

5.5学术论文管理对话框程序代码

void CMainDlg::OnMenuKYNW() {

CKynwDlg KynwDlg; KynwDlg.DoModal(); }

5.6科研人员管理对话框程序代码

void CMainDlg::OnMenuKYRY() {

CMkyryDlg KyryDlg; KyryDlg.DoModal(); }

5.7科研项目管理对话框程序代码

void CMainDlg::OnMenuKYXM() {

CKyxmDlg KyxmDlg; KyxmDlg.DoModal(); }

5.8辅助编码管理对话框程序代码

void CMainDlg::OnMenuXMBM() {

CXmbmDlg XmbmDlg; XmbmDlg.DoModal(); }

10

《面向对象程序设计课程设计报告》

5.9学术论文管理对话框程序代码

void CMainDlg::OnMenuXSQK() {

CXsqkDlg XsqkDlg; XsqkDlg.DoModal(); }

5.10学术著作管理对话框程序代码

void CMainDlg::OnMenuXSZZ() {

CXszzDlg XszzDlg; XszzDlg.DoModal(); }

6运行与测试

图6-1 科研人员管理对话框运行界面

11

《面向对象程序设计课程设计报告》

图6-2 科研项目管理对话框对话框运行界面

图6-3 获奖情况管理对话框运行界

12

《面向对象程序设计课程设计报告》

图6-4科研论文管理对话框运行界面

图6-5学术著作管理对话框运行界面

13

《面向对象程序设计课程设计报告》

图6-6学术期刊查询对话框运行界面

图6-7 项目编码查询对话框运行界面

14

《面向对象程序设计课程设计报告》

图6-8 参加人员管理对话框运行界面

15

《面向对象程序设计课程设计报告》

总 结

这次我们课程设计的内容是通用高校科研管理系统,通过同学的帮助和自己的努力我们成功的利用所学的C++面向对象知识完成了这次课程设计。

通过C++程序设计的锻炼,使我更加理解了C++语言的基本概念和编程方法及Visual C++环境的使用、各功能的实现;通过这次通用高校科研管理系统课程设计使我能够正确地理解C++语言中的面向对象的方法,基本掌握C++语言中的词法,语法,及函数还有各种算法的实现,界面的设计与设置,数据库知识,数据库,数据库表,对话框,ActiveX,类,函数等。在做通用高校科研管理系统的时候,运用了C++MFC软件,数据库的设计等,制作了系统的主界面,完成了程序等等,在了解了通用高校科研管理系统的结构后完成了系统的创造和制作。通过这次课程设计,我巩固了这学期所学的C++面向对象的基本知识。并且对所学的知识有了进一步的了解。通过这次课程设计,使我感觉到要想做好一门课程设计一定要多实践,多上机操作实践。回想设计的整个过程我明白了设计一个程序不是件容易的事,遇到了许多问题,比如说是数据库的实现,界面的设计修改,图片的筛选和插入,一切为了使课程设计更完善。最后通过请教专业知识比较好的同学和同学之间的相互讨论得出了方法和结论,解决的问题。当我设计成功、编译出理想的结果时,很开心。但是还有很多的地方需要我们进行改进和完善。还有一些问题需要我们去改进。答辩后老师告诉我们要从中学到自己的东西,使程序更完善更实用。我们回来经过思考又对自己的设计有了新的了解,解决了一些开始产生的疑问。

这次课程设计,在设计时我遇到许多困难。及时向对C++程序了解比较深的同学请教,经过最初的编程及一步步的改进,还有调试美化,上网查找有关资料等,最终成功的完成了我的课程设计。在做课程设计时我们团结努力,互相取别人之长补自己之短,互相配合。这为我以后做事的原则打下基础!让我知道了成功完成一件工作需要团体的力量。

通过这次课程设计我了解了更多关于C++面向对象的知识,这对我来说是什么可贵的,我要继续努力,再接再厉。争取在自己的专业上有更好的发展和突破。

16

《面向对象程序设计课程设计报告》

致 谢

通过这次通用高校科研管理系统的课程设计,我了解了更多的C++面向对象知识,对自己的专业有了更进一步的了解。这次试验的过程是艰苦的,我和我的同学们付出了很多汗水去填代码,美化和排版。我要感谢和我这么多天一起学习工作的朋友,一起讨论研究的舍友们。我还要感谢我的老师们,他们耐心的指导我们,分析调试程序给我们看,让我们能够很快的掌握和了解自己所做的课程设计的内容和方法。最重要的是他们给了我们一次锻炼自己,提高自己的机会。还要感谢淮阴工学院、计算机工程系提供的实践机会,实验室人员提供的实验环境,参考文献的原作者。在这次程序课程设计中,程序设计报告书对我帮助很大,所以我要感谢那些编写程序设计报告书的老师,谢谢他们不辞辛苦的为我们编写报告书,并在报告书中加入了大量课外知识,丰富了我们的专业知识。还有指导我们完成课程设计的同学,他们作为每一小组的组长,牺牲自己的时间帮助我们,他们耐心的指导我们,细心的为我们找错,让我们十分感动,感谢他们的辛勤劳动。通过这次课程设计,我明显感觉到我的耐心与信心变强了。对自己的专业知识有了更深的了解。对自己的专业知识有了更大的兴趣。我还要感谢编写我们教材的和这方面有关知识书籍的编者老师们。它不仅教授给你一种语言,还教给你一种思考方式,教给你一种对编程语言的全新的理解。读这些书真可以说是一种享受。我还要感谢所有热爱C++的人,和我们一起奋战在一起的人。

17

《面向对象程序设计课程设计报告》

参考文献

[1]于永彦,于长辉,于坤.课程设计指导书.江苏:淮阴工学院.计算机工程系,2007

[2]张岳新.Visual C++程序设计.苏州大学出版社,2006

[3]刘国钧,陈绍业,王凤翥.图书馆目录.第1版.北京:高等教育出版社,1957 [4]陆明.C++程序设计与数据结构基础实验指导.天津大学出版社,2006 [5]朱晴婷,邵娟等.Visual C++基础与实例分析.北京:清华大学出版社,2004 [6]蒋爱军,李卯黄,梅晓明.C++ Primer(第4版) .北京:邮电出版社,2002

18

《面向对象程序设计课程设计报告》

参考文献

[1]于永彦,于长辉,于坤.课程设计指导书.江苏:淮阴工学院.计算机工程系,2007

[2]张岳新.Visual C++程序设计.苏州大学出版社,2006

[3]刘国钧,陈绍业,王凤翥.图书馆目录.第1版.北京:高等教育出版社,1957 [4]陆明.C++程序设计与数据结构基础实验指导.天津大学出版社,2006 [5]朱晴婷,邵娟等.Visual C++基础与实例分析.北京:清华大学出版社,2004 [6]蒋爱军,李卯黄,梅晓明.C++ Primer(第4版) .北京:邮电出版社,2002

18

本文来源:https://www.bwwdw.com/article/f0f5.html

Top