面向对象程序设计-课程设计.pdf
《面向对象程序设计-课程设计.pdf》由会员分享,可在线阅读,更多相关《面向对象程序设计-课程设计.pdf(37页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、数 学 与 计 算 机 学 院课 程 设 计 说 明 书课 程 名 称:面向对象程序设计-课程设计课 程 代 码:_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _题 目:人事管理系统_ _ _ _ _ _ _ _ _ _ _ _ _ _年级/专业/班:_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _学 生 姓 名:_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _学 号:_ _ _ _ _
2、 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _开 始 时 间:2007 年 7 月 2 日完 成 时 间:2007 年 7 月 13 日课程设计成绩:指导教师签名:年 月 日学习态度及平时 成 绩(30)技术水平与实际能 力(20)创 新(5)说明书撰写质量(45)总 分(100)人 事 管 理 系 统目 录1弓 I 言.11.1 问题的提出.11.2 国内外研究的现状.11.3 任务与分析.12程序的主要功能.22.1 添加功能.22.2 删除功能.22.3 显示功能.22.4 查找功能.32.5 修改功能.33程序运行平台.44总体设计
3、.55程序类的说明.66详细设计.126.1添加模块.1 26.2显示模块.1 56.3修改模块.1 66.4查找模块.1 86.5删除模块.2 17系统测试.237.1添加功能测试.2 37.2查找功能测试.2 57.3 修改功能测试.2 77.4 删除功能测试.2 98结论.308.1 程序完成的功能.3 08.2 程序存在问题及修改.3 08.3 收获.3 1致 谢.32参考文献.33人 事 管 理 系 统摘 要分析了人事管理系统的功能需求,进行了总体设计和详细设计,在此基础上利用VC+6.0开发完成了人事管理系统,并对该系统进行了测试。该系统具有人员信息的添加、修改、删除和查找等功能,
4、并且有着友好的图形界面,能够方便地进行人员的分类管理。关键词:人事管理;添加;修改;删除人 事 管 理 系 统1引 言1.1 问题的提出在现代化的企业管理中,人事管理系统有着十分重要的作用,然而,用大型软件系统来于小型的企事业单位,不啻于“杀鸡用牛刀”,因此小型的软件对于这种单位自然有十分重要作用。某小型企业出与这种目的制作了这个人事管理系统。1.2 国内外研究的现状人事管理系统的发展历史可以追溯到2 0世 纪6 0年代末期。第二代的人事管理系统出现于2 0世 纪7 0年代末人事管理系统的革命性变革出现在2 0世 纪9 0年代末。由于市场竞争的需要,如何吸引和留住人才,激发人事的创造性、工作责
5、任感和工作热情已成为关系企业兴衰的重要因素,人才已经成为企业最重要的资产之一。”公正、公平、合理”的企业管理理念和企业管理水平的提高,使社会对人事管理系统有了更高的需求;同时由于个人电脑的普及,数据库技术、客户/服务器技术,特 别 是I n t e r n e t/I n t r a n e t技术的发展,使得第三代人事管理系统的出现成为必然。第三代人事管理系统的特点是从人事管理的角度出发,用集中的数据库将儿乎所有与人事相关的数据(如薪资福利、招聘、个人职业生涯的设计、培训、职位管理、绩效管理、岗位描述、个人信息和历史资料)统一管理起来,形成了集成的信息源。友好的用户界面,强有力的报表生成工具
6、、分析工具和信息的共享使得人事管理人员得以摆脱繁重的日常工作,集中精力从战略的角度来考虑企业人事规划和政策。1.3任务与分析本课题主要的目的是建立一个学生教师的基本信息管理系统,系统要能够存贮和显示人员信息并对人员信息有一般的操纵功能,包括添加、删除、修改和查找。每一类人员,如学生、研究生、教师,它们应该按类别的不同分别存在各自的文件中,这样便于分类管理,也便于对文件的读写操作。每一类人都对应一个对该类人员信息进行操作的对话框,每一类人对应的对话框都具有对该类人员的添加、删除、修改和查找的功能。如学生对话框就能够完成对学生的添加、删除、修改和查找。这样既便于管理操作又便于程序实现。-1-人 事
7、 管 理 系 统2程序的主要功能本系统的主要功能都集成在了一个对话框上,以学生类为例,如 图2.1所示:图2.1程序界面2.1添加功能添加一个人员的基本信息,包括姓名,编号,身份证号码,生日,性别。不同职务的人不要添加其一些和职务有关的信息。如:学生在添加完基本信息后,还要添加其班号。如果是老师就应在基本信息基础上再增加工作部门和职位信息。大体操作如图2.1所示。2.2删除功能一次能够删除一个人员的所有信息。首先可以应用系统的查找功能找到要删除的人员信息,点击删除按钮,然后点击确定按钮即可,如 图2.1所示。2.3显示功能当打开一个人员信息文件,或是对人员信息完成了添加、删除和修改功能后,在点
8、击了确定按钮后,能够在视图上显示每个人员的详细信息,如图2.2所示。人 事 管 理 系 统三 二_ 6-peopleJT向冈文件()()查看W)录入记录就S蹩编号名字身份证号性用生日班号1001刘备511304178505015552男1785.5.141002关羽511304178612147778男1786.12.14 5图2.2 显示功能2.4查找功能根据你键入的编号或名字或编号和名字查找。如果要查找的人员是存在的,系统能显示该人员的详细信息,如图2.1 所示。2.5修改功能可以先查找到要修改的人员的信息,修改后点修改按钮即可完成修改,如图2.1 所示。人 事 管 理 系 统3 程序运行
9、平台程序运行平台是V C+6.0。具体操作如下:在p e o p le工程中找到p e o p le,d sw文件打开。点击编译,然后运行即可。或 有p e o p le工程中的D e b ug下直接运行p e o p le.e x e-4-人 事 管 理 系 统4 总体设计图4.1程序总框架图人 事 管 理 系 统5 程序类的说明各类的关系如图5.1:图5.1 各个类的关系图各个类的声明如下:C B ir thd a y 类主要是用来表示人员的出生日期,其声明如下:C B ir thd a y 类的声明c la ss C B ir thd a y(p ub lic:C B ir thd a
10、y ();vir tua l C B ir thd a y。;C S tr in g m_ y e a r;年C S tr in g m_ mo n th;月C S tr in g m_ d a y;日);C P e o p le 类作为各个人员类的虚基类,里面封装了最基本的人员信息和一些函数接-6-人 事 管 理 系 统,其声明如下:C P e o p le类的声明c la ss C p e o p lep ub lic:C p e o p le ();C p e o p le(C p e o p le f e p e o p le);vir tua l C p e o p le。;vir
11、tua lB O O L o p e r a to r=(C p e o p le p e o p le);vir tua l vo id o p e r a to r=(C p e o p le p e o p le);vir tua l vo id S e r ia lize(C A r c hive&a r);vir tua l vo id O n D r a w(C D C*p D C ,in t to p);重载二号重载二号文件读写函数绘图函数C S tr in g m_ n a me;C S tr in g m_ n umb e r;C S tr in g m s ex;C S t
12、r in g m_ id;C B ir thd a y m_ b ir th;名字编号姓别身份证号出生日期);C S tud e n t类从C P e o p le类派生,主要完成学生信息的读写和绘制,其声明如下:C S tud e n t类的声明c la ss C S tud e n t:vir tua l p ub lic C p e o p le C P e o p le 作为虚基类p ub lic:C S tud e n t();C S tud e n t(C S tud e n t&stud e n t);vir tua l C S tud e n t();vo id o p e r
13、 a to r=(C S tud e n t stud e n t);重载二号vo id S e r ia lize(C A r c hive&a r);重载基类读写文件函数-7-人 事 管 理 系 统void OnDraw(CDC*pDC,int top);重载基类绘图函数BOOL operator=(CStudent student);重载二号CString m_classnumber;班号);CGraduate类 从 CStudent类派生,主要完成研究生信息的读写和绘制,其声明如下:CGraduate 类声明class CGraduate:virtual public CStudent
14、 CStudent 作为虚基类public:CGraduate();CGraduate(CGraduate&graduate);virtual CGraduate0;void operator=(CGraduate graduate);重载二号BOOL operator=(CGraduate graduate);重载二二号void Serialize(CArchive&ar);重载基类读写文件函数void OnDraw(CDC*pDC,int top);重载基类绘图函数CString m_zuanye;专业CTeacher m_teacher;导师;CTeacher类从CPeople类派生,主
15、要完成教师信息的读写和绘制,其声明如下:CTeacher类声明class CTeacher:virtual public Cpeople CPeople 作为虚基类public:CTeacher();CTeacher(CTeacher&teacher);virtual CTeacher();-8-人 事 管 理 系 统vo id o p e r a to r=(C T e a c he r te a c he r);重载二号B O O L o p e r a to r=(C T e a c he r te a c he r);重载二 二 号vo id S e r ia lize(C A r c
16、 hive&a r);重载基类读写文件函数vo id O n D r a w(C D C*p D C,in t to p);重载基类绘图函数C S tr in g m_ p o sitio n;职务C S tr in g m_ d e p a r tme n t;部门);C A sista n tT e a c he r 类从C G r a d ua te 类和C T e a c he r 类派生,主要完成学生信息的读写和绘制,其声明如下:C A s i sta n tT e a c he r 类声明c la ss C A sista n tT e a c he r:p ub lic C G
17、r a d ua te,p ub lic C T e a c he rp ub lic:C A sista n tT e a c he r();C A sista n tT e a c he r(C A sista n tT e a c he r&a sista n t);vir tua l C A sista n tT e a c he r();vo id o p e r a to r=(C A sista n tT e a c he r a sista n t);重载二号B O O L o p e r a to r=(C A sista n tT e a c he r a sista n
18、t);重载二 二 号vo id S e r ia lize(C A r c hive f t a r);重载基类读写文件函数vo id O n D r a w(C D C*p D C,in t to p);重载基类绘图函数;由于对话框类都是完成相同的功能,所以它们有相同的处理函数,只是关联的变量个数不同,现以C S tud e n t类为例说明:C stud e n tD ilo g 类声明c la ss C stud e n tD ilo g :p ub lic C D ia lo g/C o n str uc tio np ub lic:-9-人 事 管 理 系 统C stud e n t
19、D ilo g(C W n d*p P a r e n t=N U L L);/sta n d a r d c o n str uc to rC S tud e n t stud e n ts M A X _ S I Z E ;存入学生信息的对象数组C S tud e n t*g e tS tud e n t();返回学生对象数组指针v o i d st u d e n t Se a r c h(i n t k);将选择的学生的的信息恢复到各控件i n t n C o u n t;记录学生人数i n t k;选中的列表索引号/D i a l o g D a t a/A F X_D A TA(C
20、 st u d e n t D i l o g)e n u m I D D =I D D _STUD NT ;i n t m _st u d e n t b o y;姓别C St r i n g m _st u d e n t c l a sn u m;班号C St r i n g m st u d e n t d a y;日C St r i n g m _st u d e n t i d;身份证号C St r i n g m _st u d e n t m o n t h;/月C St r i n g m _st u d e n t n a m e;名字C St r i n g m _st
21、u d e n t y e a r;年C St r i n g m st u d e n t n u m b e r;编号C St r i n g m _se a r c hn a n i e;查找的名字C St r i n g m _se a r c hn u m b e r;查找的编号/A F X_D A TA/Ov e r r i d e s/C l a ssWi z a r d g e n e r a t e d v i r t u a l f u n c t i o n o v e r r i d e s/A F X_VI RTUA L(C st u d e n t D i l o
22、g)p r o t e c t e d:v i r t u a l v o i d D o D a t a E x c ha n g e(C D a t a E x c ha n g e*p D X);/D D X/D D V su p p o r t/A F X_VI RTUA L/I m p l e m e n t a t i o np r o t e c t e d:-10-人 事 管 理 系 统/G e n e r a t e d m e ssa g e m a p f u n c t i o n s/A F X_MSG(C st u d e n t D i l o g)a f x _
23、m sg v o i d On A d d();添加消息处理函数a f x _m sg v o i d On Se l c ha n g e St u d e n t l i st ();列表发生鼠标事件处理函数v i r t u a l B OOL On l n i t D i a l o g O;初始化对话框a f x _m sg v o i d On St u d e n t d e l ();删除消息处理函数a f x _m sg v o i d On St u d e n t m o d O;修改消息处理函数a f x _m sg v o i d On Se a r c hO;查找消
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向 对象 程序设计 课程设计
限制150内