《公司考勤管理系统设计及实现本科毕业论文(设计).doc》由会员分享,可在线阅读,更多相关《公司考勤管理系统设计及实现本科毕业论文(设计).doc(102页珍藏版)》请在三一办公上搜索。
1、本科毕业论文(设计)公司考勤管理系统设计及实现 院 (系)信息学院专 业软件工程学 号学生姓名指导教师提交日期内容摘要公司考勤管理系统能够为客户提供考勤报到及信息查询和统计的工作,系统的功能与效率对于管理者来说都是至关重要的,是公司对人员管理的重要手段。本文先从实际出发,考察了部分公司的考勤管理系统,详细分析了系统目前存在的不足,并从公司考勤系统的现状和未来的发展趋势入手,使用Java与SQL等相关的技术,对这一系统进行编程开发,进而实现系统的各种功能。其中在通过具体的详细分析之后,主要设计了用户管理模块、员工考勤模块、员工管理模块与考勤信息模块四个大的模块来对系统进行编码,并根据模块对数据库
2、和界面进行设计。同时,文章给出了各个关键模块的功能说明、实现代码,最后对系统进行了功能测试,并就开发过程中存在的问题进行了总结。关键词: Java 模块 数据库 公司考勤管理系统设计及实现 AbstractThe attendance management system can provide attendance report and information query and statistics for the customers work is essential, function and efficiency of the system for managers of the co
3、mpany, is an important means of personnel management. This article first embarks from the reality, the attendance management system is part of the company, a detailed analysis of the shortcomings of the current system, and from the present situation of the company attendance system and the future de
4、velopment trend, the use of Java and SQL and other related technologies, programming of the system, so as to realize the various functions of the system. The through detailed analysis of concrete, the main design of the user management module, employee attendance module, staff management module and
5、the attendance information module four big modules to code system, and based on the database and interface design module. At the same time, the paper gives the description of the function of each key module, the realization of the code, finally has carried on the system function test, and summarizes
6、 the problems existing in the development process.Key words: Java Module Database The Compant attendance management system目 录1.引言12公司考勤管理系统需求分析22.1系统概述22.2系统运行环境22.2.1 硬件环境22.2.2 软件环境22.3开发工具22.3.1 Java22.3.2 Eclipse22.3.3 SQL Server 201232.4系统需求分析32.4.1 系统数据流图32.4.2系统功能需求42.4.3系统功能需求用例图53公司考勤管理系统的总
7、体设计63.1开发和设计的总体思想63.2系统模块结构设计63.3系统功能模块划分63.3.1 用户管理模块63.3.2 员工考勤模块73.3.3 员工管理模块73.3.4 考勤信息模块73.4系统流程描述73.5数据结构设计83.5.1 数据库的E-R图设计83.5.2数据库表结构93.6 界面设计103.6.1 登录模块界面103.6.2 系统主界面113.6.3 员工考勤界面113.6.4 员工管理界面123.6.5 关于本系统界面123.6.6管理员界面133.6.7 成员信息管理界面143.6.8 通讯录界面173.6.9 备忘录界面183.6.10音乐管理界面193.6.11 退出
8、对话框194. 公司考勤管理系统详细设计204.1连接数据库模块204.1.1 模块描述204.1.2 主要程序清单204.2登录模块214.2.1模块描述214.2.2主要程序清单214.3 主界面模块234.3.1 模块描述234.3.2 主要程序清单234.4考勤模块334.4.1 模块描述334.4.2 主要程序清单334.5信息统计模块374.5.1 模块描述374.5.2 主要程序清单384.6 管理员模块444.6.1 模块描述444.6.2 主要程序清单444.7 音乐管理模块524.7.1 模块描述524.7.2 主要程序清单525系统测试和应用545.1 系统测试545.1
9、.1 关于软件测试545.1.2 黑盒测试545.2 系统应用556结语与展望56参 考 文 献57致 谢581.引言随着社会的发展,人民生活水平的提高,人民对生活的质量要求越来越高,也就导致了房地产事业的快速发展。而城市化的进程使得传统的四合院家族越来越少,随之而来的是,各地的高楼大厦拔地而起。为了满足生活要求和精神需求,越来越多的人选择了离开家族,“自力更生”。从而导致的结果是,家族之间的交流沟通,以及家族成员之间的信息管理变得更加地困难。计算机软件和硬件等技术的高速发展,使得计算机在全世界的应用越来越广泛,遍及各个行业各个角落,人们普遍使用计算机来提高工作效率,计算机成为现代人不可缺少的
10、一部分。在信息横飞的当今社会,我们应该懂得如何利用计算机来对这些信息加以管理,从而更有效地为管理部门提供现代化日常办公条件及丰富的综合信息服务,实现档案管理自动化和办公事务处理自动化,以提高办公效率和管理水平。在现代社会发展和计算机出现的双重影响下,用户对家族软件的需求也越来越高,家族信息管理系统的开发也就不可避免地成为当前软件开发的又一热点。目前,我国的家族信息管理系统还处在萌芽阶段,尚未普及,但是,它确确实实已经出现在现代的一些家族和城中村,而且作为管理事业的一部分发挥着越来越重要的作用。家族信息管理系统能够为用户进行成员管理、基本信息管理以及统计查询等工作提供便捷的服务,有利于实现对家族
11、事业的现代化管理,有利于协调配合城中村的各项工作,有利于促进家族成员的沟通与联系,对构建社会主义以人为本的和谐社会具有重要的现实意义,已是现代家族事业管理必不可少的一部分。本项目提出的家族信息管理系统是基于VC平台,使用VC中基于MFC的Windows应用程序进行开发的,并且运用了ODBC数据访问技术。Visual C+不仅是一个C+编译器,而且是一个基于Windows操作系统的可视化集成开发环境。因此,基于VC平台的开发,可以使软件具有较好的可操作性,并且帮助实现界面的友好性等。由于家族信息管理系统涉及的功能和用途在不同的地方有所不同,因此,设计并实现具有基本功能并有效合理的家族信息管理系统
12、是本项目开发过程中着重考虑的问题。另外,本项目除了实现家族信息管理系统的基本功能之外,还重点考虑了信息管理系统界面的易用性和友好性等问题。2家族信息管理系统需求分析2.1系统概述本项目主要是设计并实现了公司考勤管理系统,该系统主要的功能包括系统员工管理、员工基本信息管理、员工考勤管理、统计查询,例如新增员工、查找员工、查找某员工信息、员工考勤信息统计情况等。2.2系统运行环境2.2.1 硬件环境处理器:Inter Pentium II 266 MX 或更高内存:64MB硬件空间:2GB显卡:SVGA显示适配器2.2.2 软件环境操作系统:Window XP/7/8数据库:SQL Server2
13、0122.3开发工具2.3.1 Visual C+ 6.0及C+语言Visual C+的简介Visual C+1是一个功能强大的可视化软件开发工具。自1993年Microsoft公司推出Visual C+1.0后,随着其新版本的不断问世,Visual C+已成为专业程序员进行软件开发的首选工具。虽然微软公司推出了Visual C+.NET(Visual C+7.0),但它的应用的很大的局限性,只适用于Windows 2000,Windows XP和Windows NT4.0。所以实际中,更多的是以Visual C+6.0为平台。Visual C+6.0不仅是一个C+编译器,而且是一个基于Win
14、dows操作系统的可视化集成开发环境(integrated development environment,IDE)。Visual C+6.0由许多组件组成,包括编辑器、调试器以及程序向导AppWizard、类向导Class Wizard等开发工具。 这些组件通过一个名为Developer Studio的组件集成为和谐的开发环境。Visual C+它大概可以分成三个主要的部分:Developer Studio ,MFC, Platform SDK。Visual C+包含了两套完整的Windows应用程序开发系统,既可以使用Win32 API来开发用C编写的Windows应用程序,也可以开发基于
15、MFC的Windows应用程序,此外,Visual C+也包括ActiveX模板库(ActiveX Template Library,ATL),可以用它来开发在Internet上使用的ActiveX控件,还可以制作基于MFC的ActiveX控件,还可以设计基于C或C+的动态链接库(DLL)。Visual C+具有面向对象程序设计的功能,Visual C+的核心是Microsoft基础类库(Microsoft Foundation Class Library,MFC),采用的是消息映射机制进行程序设计。C+语言的简介C+2是一种使用非常广泛的计算机编程语言。C+是一种静态数据类型检查的,支持多重
16、编程范式的通用程序设计语言。它支持过程化程序设计、数据抽象、面向对象程序设计、制作图标等等泛型程序设计等多种程序设计风格。一开始C+是作为C语言的增强版出现的,从给C语言增加类开始,不断的增加新特性。虚函数(virtual function)、运算符重载(operator overloading)、多重继承(multiple inheritance)、模板(template)、异常(exception)、名字空间(name space)等逐渐被加入C+标准。但是,C+是一门独立的语言,它并不依赖于C语言。2.3.2 Microsoft Access 2003Microsoft Access3是
17、由微软发布的关联式数据库管理系统。它结合了 Microsoft Jet Database Engine 和 图形用户界面两项特点,是 Microsoft Office的成员之一。Access 是微软公司推出的基于Windows的桌面关系数据库管理系统(RDBMS),是Office系列应用软件之一。它提供了表、查询、窗体、报表、页、宏、模块7种用来建立数据库系统的对象;提供了多种向导、生成器、模板,把数据存储、数据查询、界面设计、报表生成等操作规范化;为建立功能完善的数据库管理系统提供了方便,也使得普通用户不必编写代码,就可以完成大部分数据管理的任务。2.4系统需求分析软件需求分析4是软件定义时
18、期的最后一个阶段,它的基本任务是准确地回答“系统必须做什么”的问题,需求分析师发现、求精、建模和规约的过程。需求分析的方法有结构化分析方法和其他分析方法。其中,结构化分析方法是面向数据流进行需求分析的一种方法。它使用数据流图(DFD,Data Flow Diagram)、数据字典(DD,Data Dictionary)等工具进行分析。2.4.1 系统数据流图系统数据流图4是描述数据处理过程的工具,它具有抽象性、概括性和层次性的三个特性。本系统的数据流图如图2.4.1所示。图2.4.1 系统数据流图2.4.2系统功能需求新建家谱,打开已有家谱文件,对家谱成员进行排序,增加成员,查找成员,确定某两
19、个成员之间的关系,查找某代人的信息等功能,如图2.4.2所示。 图2.4.2 功能需求图在使用该系统软件时,能够供系统用户在电脑上任意选择自己喜欢的MP3文件进行播放。音乐的选择能够增强该系统的艺术感,并且在用户使用软件时,利用音乐可以达到放松心境的效果。在使用该软件的过程中,系统管理员可以设置其他的系统用户,如信息录入员、系统管理员等,不同的系统用户拥有不同的系统功能。因为有了不同的系统用户,所以不同的用户可以通过通讯录了解其他用户的信息,并且通过电子邮件联系其他系统用户,又或者利用备忘录给其他系统用户留言。本系统提供了清晰友好的界面,用户可以根据自己的需要和喜好进行选择,在选择的过程中,系
20、统还会出现一些提示信息,引导用户正确进行操作。2.4.3系统功能需求用例图用例图5显示系统中的用例与角色及其相互关系。用例是系统提供的高级功能块,角色是与所建系统交互的对象。用例图由参与者(Actor)、用例(Use Case)、系统边界、箭头组成。其中,用例之间一般有三种关系:泛化关系,扩展关系,包含关系。本系统的功能需求用例图如图2.4.3所示。 图2.4.3 用例图3家族信息管理系统的总体设计3.1开发和设计的总体思想 本系统采用Visual C+ 6.0为开发工具与Access作为后台数据库相结合实现,总体思想基于面对对象的程序设计。应用高级语言程序设计中的循环、选择等控制结构实现家族
21、信息管理系统的增、删、改和查等经典功能,大量信息的存储和操作用Access数据库来实现。在软件开发过程中应用了软件工程以及二叉树6的基本理论。基于成本以及安全性考虑,假设本系统是一个相对封闭的单机运行系统,不提供与其他系统的实时数据交互。系统基本的流程是:用户登录主界面选择各项功能。3.2系统模块结构设计本家族信息管理系统主要分为4个子模块,其系统结构设计图如图3.2.1所示。 图3.2.1 系统结构图3.3系统功能模块划分根据上述系统总体设计思想的分析,该系统的主要模块的设计如下:3.3.1 系统用户管理模块用户使用该系统之前需要进行登录验证,系统会提示用户选择用户和输入密码,从而调用数据库
22、中存储的该用户信息进行校验,如果未能通过校验,则会提示用户密码错误,用户将有三次登陆到系统的机会,三次机会还没有登陆系统的话,系统将自动退出。用户登录到系统后允许使用的与权限相对应的系统功能,主要有系统管理员、系统维护员、以及系统信息录入员。3.3.2 基本信息管理模块包括对家族信息进行管理、对系统用户进行管理、音乐选择等功能。其中,对系统用户管理的模块中,主要包括新增各类系统新用户,包括用户名称、用户权限、用户密码、密码确认,同时还可以对系统用户进行注销以及密码修改等操作;而音乐选择功能可以选择硬盘中的各类格式的音乐文件。3.3.3 家族信息管理模块包括新建家谱,然后可以对家谱进行管理,包括
23、姓名、父亲姓名、出生日期、家庭地址、健在否(包括死亡日期)、婚否等信息。在该家谱的基础上,可以进行删除记录、增加孩子、确定两人关系、更改资料等操作。该系统可以对多个家谱进行管理,并且分别进行保存文件。也可以对已经做好的家谱进行保存,并随时进行管理操作。3.3.4 统计查询模块包括对系统用户的统计查询以及对家族成员的统计查询两大模块、其中对系统用户的统计查询包括从姓名、生日、手机号码进行查找,同时可以查看系统用户的属性,创建新的用户、给新用户发电子邮件等。而对家族成员的统计查询模块中,主要包括对家族成员表进行统计查询,包括按出生日期排序、按姓名查找成员、按生日查找成员、查询某一代的信息等操作。3
24、.4系统流程描述运行系统后,首先看到登录窗体,对用户的身份进行认证。在本系统中,应该首先增加家谱信息,之后才能对家谱成员进行操作。基本信息管理模块包括节基本信息设置模块包括对家族信息进行管理、对系统用户进行管理、音选择乐等功能。其中,对系统用户管理的模块中,主要包括新增各类系统新用户,包括用户名称、用户权限、用户密码、密码确认,同时还可以对系统用户进行注销以及密码修改等操作;而音乐选择功能可以选择硬盘中的各类格式的音乐文件。添加家谱信息之后,就可以对家族中的成员进行各类的操作了。家族信息管理设置模块包括新建家谱,然后可以对家谱进行管理,包括姓名、父亲姓名、出生日期、家庭地址、健在否(包括死亡日
25、期)、婚否等信息。在该家谱的基础上,可以进行删除记录、增加孩子、确定两人关系、更改资料等操作。该系统可以对多个家谱进行管理,并且分别进行保存文件。也可以对已经做好的家谱进行保存,并随时进行管理操作。统计查询模块包括对系统用户的统计查询以及对家族成员的统计查询两大模块、其中对系统用户的统计查询包括从姓名、生日、手机号码进行查找,同时可以查看系统用户的属性,创建新的用户、给新用户发电子邮件等。而对家族成员的统计查询模块中,主要包括对家族成员表进行统计查询,包括按出生日期排序、按姓名查找成员、按生日查找成员、查询某一代的信息等操作。本系统流程分析如图3.4.1所示。 图3.4.1 系统流程图3.5数
26、据结构设计3.5.1 数据库的E-R图设计家族信息管理系统采用Access2003数据库存储通讯录用户的有关信息,而对于系统用户是通过自动程序自动保存设置,家族成员是通过文件进行保存。其E-R图7如下:图3.5.1系统E-R图3.5.2数据库表结构系统用户数据表,如表1所示。其中,系统用户信息表的各数据项详细说明如表2所示。表1用户登陆密码amy信息录入员0000000System系统管理员0000000表2数据字段数据类型user文本password文本 在数据库中,系统通讯录用户信息存在BookData表中,其基本信息如表3所示。其中,系统用户信息表的各数据项详细说明如表4所示。表3nam
27、eemailqqmobilephonebirthdayworkunithomepagedemo杨丽金ylijin2248377708136314647630208409477919861031广东商学院李涛litao131457275300763231256919850512表4数据字段数据类型name文本email文本qq文本mobile文本phone文本birthday文本workunit文本homepage文本demo文本3.6 界面设计家族信息管理系统要为用户提供一个易于操作的人机界面,在界面设计过程中充分考虑界面的一致性和简洁性、要求方便易用,界面友好,具体设计如下。3.6.1 登录
28、界面 用户登录界面设计充分考虑到用户实际应用系统时可能出现误操作的情况,如果用户输入的用户名和密码不符,则提示用户重新输入。 为保证用户输入密码不会被窃取,用户进入系统时输入的密码采用不回显的方式从屏幕获取用户输入的字符,从而保证顾客登录系统时密码的安全性。当用户输入的用户名与密码相符,则会直接进入系统主界面。根据不同的权限,调用相应的系统界面。 图3.6.1登录界面3.6.2 系统主界面系统管理员默认名为System,密码为0000000;信息录入用户名为amy,0000000为密码,确认登录后进入主界面,如图3.6.2所示。 图3.6.2 系统主界面3.6.3 系统用户管理界面用户登录到系
29、统后允许使用的与权限相对应的系统功能,主要有系统管理员以及系统信息录入员。系统用户管理的模块中,主要包括新增各类系统新用户,包括用户名称、用户权限、用户密码、密码确认,同时还可以对系统用户进行注销以及密码修改等操作。密码修改成功后,系统将会提示“密码修改成功,请牢记新密码”。用户管理界面如图3.6.3所示。图3.6.3 用户管理界面 3.6.4 帮助界面图3.6.4 帮助界面3.6.5 关于本系统界面该界面采用Flash动画形式对系统进行介绍,并且可直接点击E-mail直接开启Ooutlook联系作者。如图3.6.5所示。图3.6.5 关于本系统界面3.6.6家族信息管理界面家族信息管理设置模
30、块包括新建家谱,然后可以对家谱进行管理,包括姓名、父亲姓名、出生日期、家庭地址、健在否(包括死亡日期)、婚否等信息。在该家谱的基础上,可以进行删除记录、增加孩子、确定两人关系、更改资料等操作。该系统可以对多个家谱进行管理,并且分别进行保存文件。也可以对已经做好的家谱进行保存(必须输入后缀“.ftf”,否则文件不能打开),并随时进行管理操作。界面如图3.6.6所示。 图3.6.6 家族信息管理界面 图3.6.7 增加孩子3.6.7 成员信息管理界面在家族信息管理模块下,可以进行删除记录、增加孩子、确定两人关系、更改资料、按生日进行排序等操作。成员信息管理界面如图3.6.8所示。图3.6.8 点击
31、“出生日期排序”后系统界面 图3.6.9 可填入任一代人的信息 图3.6.10 系统提示 图3.6.11 右边表格出现该代人的信息 图3.6.12 输入要查询的名字“杨蕾” 图3.6.13 系统提示 图3.6.14 右边表格出现“杨蕾”的相关信息 图3.6.15 输入查询的生日“10.31” 图3.6.16 系统提示 图3.6.17 出现生日为“10.31”的成员的信息 图3.6.18 输入“杨招娣”及“华文亿”两人的名字图3.6.19 系统提示并显示两人之间的关系3.6.8 通讯录界面在通讯录中,我们可以进行增加、修改、删除用户资料,查看用户属性,查找用户,通过电子邮件联系用户等操作。界面自
32、动调用数据库中BookData表信息。查找用户的查找项有:姓名、手机号码、电话号码、QQ、生日、工作单位、个人主页、EMAIL、备注等。而删除用户时,应点击通讯录中某人的信息,再点击“删除”可删除该系统用户的资料,系统会自动提示“是否真的要删除”。具体界面如图3.6.20所示。图3.6.20 通讯录界面3.6.9 备忘录界面在通讯录界面中,用户可以通过备忘录进行留言。备忘录文件存储在文件夹中,以“.dat”为后缀,可以随时调出备忘录文件进行查看,修改等,同时也可新建新备忘录,新建时,可以指定当天的日期、天气等信息,以便以后查看和确认。界面如图3.6.21所示。图3.6.21 备忘录界面3.6.
33、10音乐管理界面用户可以在使用该软件的时候,播放电脑中的任意mp3播放文件,在工作的同时享受音乐的熏陶。播放过的文件,其路径会保留,以便下次直接播放。该界面如图3.6.22所示。图3.6.22 音乐界面3.6.11 退出对话框 退出时,正在进行的音乐会同时退出,并且会显示一下界面,如图3.6.23图3.6.23 退出界面显示4. 家族信息管理系统详细设计4.1连接数据库模块4.1.1 模块描述 本系统采用ODBC技术访问数据库,在类的类型中生成Familytree.cpp,默认文件为Familytree.cpp.4.1.2 主要程序清单BOOL CFamilytreeApp:InitODBC(
34、)char strCurfile256;char * p;CFileFind file;:GetModuleFileName(m_hInstance,strCurfile,sizeof(strCurfile);p = strCurfile;while(strchr(p,)p = strchr(p,);p+;*p = 0;strcat(strCurfile,BookData.mdb);if(!file.FindFile(strCurfile)AfxMessageBox(找不到BookData.mdb数据库文件,请保证该文件和本程序在同一个目录中!,MB_OK|MB_ICONSTOP);retur
35、n FALSE;if(GetProfileInt(数据源,IsFirstRun,0)CString strKeyDir = GetProfileString(数据源,CurDir);if(strKeyDir.Compare(strCurfile)WriteProfileString(数据源,CurDir,strCurfile);return(LoadODBC(CString(CarsDataBase),CString(strCurfile),CString(数据源);elseUSERINFO sysuser;strcpy(sysuser.name,System);sysuser.oper =
36、1;strcpy(sysuser.password,system);AfxGetApp()-WriteProfileBinary(用户,User0000,(LPBYTE)&sysuser,sizeof(sysuser);AfxGetApp()-WriteProfileInt(用户,LastID,1);WriteProfileInt(数据源,IsFirstRun,1);WriteProfileString(数据源,CurDir,strCurfile);return(LoadODBC(CString(CarsDataBase),CString(strCurfile),CString(数据源);re
37、turn TRUE;4.2登录模块4.2.1模块描述身份认证分为以下两个过程:首先确认用户是否有效的系统用户,其次确认用户的类型。第一个过程决定用户能否进入系统,第2个过程根据用户的类型决定用户的操作权限。如果还要创建其他用户,则使用System系统管理员用户登录,可以在用户管理模块中创建和管理;否则建议使用信息录入员身份登录,此时不能创建新用户,只能进行其他功能操作。在创建系统用户时,需要输入要创建的用户名、用户权限、密码以及密码确认。System系统管理员用户还可以添加和注销其他用户数据。登录对话框为IDD_LOGIN,为其创建一个类CLoginDlg。当用户单击确定按钮时,将发送BN_C
38、LICKED消息,在ClassWizard窗口中为其添加函数CLoginDlg:OnOk()。4.2.2主要程序清单BOOL CLoginDlg:OnInitDialog() CDialog:OnInitDialog();USERINFO theUser;char * strOper = 信息录入员,系统管理员 ;UINT size = sizeof(USERINFO);LPBYTE bt = new unsigned charsizeof(theUser);CString strID;strID.Format(User%04u,0);int lastID;lastID = AfxGetApp
39、()-GetProfileInt(用户,LastID,0);for(int i=0;iGetProfileBinary(用户,strID,&bt,&size);i+)memcpy(&theUser,bt,sizeof(theUser);CString strInfo;strInfo.Format(%s %s,theUser.name,strOpertheUser.oper);m_uList.AddString(strInfo);strID.Format(User%04u,i+1);if(lastID 0)m_uList.SetCurSel(0);delete bt;m_btnButton2.S
40、ubclassDlgItem(IDOK, this);m_btnButton2.SetIcon(IDI_ICON2); m_btnButton3.SubclassDlgItem(IDCANCEL, this);m_btnButton3.SetIcon(IDI_ICON3); return TRUE;void CLoginDlg:OnOK() UpdateData();USERINFO theUser;UINT size = sizeof(theUser);LPBYTE bt = new unsigned charsizeof(theUser);CString strID;int id = m_
41、uList.GetCurSel();strID.Format(User%04u,id);if(AfxGetApp()-GetProfileBinary(用户,strID,&bt,&size)memcpy(&theUser,bt,sizeof(theUser);delete bt;if(!m_pas.Compare(theUser.password)m_dwUser = theUser.oper;CDialog:OnOK();return;elsedelete bt;MessageBox(没有该用户的信息,请与系统管理员联系。,读取用户数据错误,MB_OK|MB_ICONSTOP);return
42、;if(m_times)m_times-;MessageBox(用户密码不正确!请再次尝试!,登陆失败!,MB_OK|MB_ICONSTOP);GetDlgItem(IDC_DLOG_CPASWORD)-SetFocus();elseMessageBox(用户密码不正确!n您的登陆失败次数已达三次,程序将退出。n请与系统管理员联系。,登陆失败!,MB_OK|MB_ICONSTOP);CDialog:OnCancel();4.3 主界面模块4.3.1 模块描述 用户成功登录后进入系统主界面,根据不同权限完成相应的功能操作。主界面的类为FamilytreeDlg.cpp。4.3.2 主要程序清单O
43、nDelete()函数OnDelete()函数功能是将家谱中的某成员进行删除操作,代码如下:void CFamilytreeDlg:OnDelete() / TODO: Add your command handler code hereif(operFamilytree.GetRoot()=0)return;HTREEITEM hItem,hChildItem;hItem=m_peTree.GetSelectedItem();hChildItem=m_peTree.GetNextItem(hItem,TVGN_CHILD);charnameMAX_CHARNUM;strcpy(name,m_peTree.GetItemText(hItem)