毕业设计(论文)-基于VC++的工资管理系统的设计与实现.doc_第1页
毕业设计(论文)-基于VC++的工资管理系统的设计与实现.doc_第2页
毕业设计(论文)-基于VC++的工资管理系统的设计与实现.doc_第3页
毕业设计(论文)-基于VC++的工资管理系统的设计与实现.doc_第4页
毕业设计(论文)-基于VC++的工资管理系统的设计与实现.doc_第5页
已阅读5页,还剩76页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于VC+的工资管理系统的设计与实现摘摘要要随着计算机技术的飞速发展,计算机在企业管理中应用越来越普及。利用计算机实现企业人事工资的管理势在必行。本系统是结合公司实际的财务制度,经过实际的需求分析,采用功能强大的VisualC+6.0做为开发工具而开发出来的单机版工资管理系统。工资管理系统是针对企业的工资管理业务进行计算机处理而开发的应用软件。整个系统从符合操作简便、界面友好、灵活、实用、安全的要求出发,完成人事、工资管理的全过程,企业的工资管理是公司管理的一个重要内容。该系统由基本信息管理、工资管理、工资查询、系统管理、帮助等子模块组成,功能基本涵盖普通企业的工资管理业务范围。企业应用本系统后,可以有效的提高工资管理水平。本文从需求分析、可行性分析、总体设计、数据库设计、功能模块编程实现等方面阐述了本系统的设计过程。为便于说明,文中绘制了程序结构框图、部分界面图和数据表。最后附有主要的源程序代码清单。关键词关键词:数据库VisualC+6.0工资管理Thedesignapproachandimplementationofthewagesmanagementsystembasedonvc+AbstractWiththedevelopmentofthecomputertechnologyandcomputersareuniversallyusedinbusinessenterprisemanagemoreandmoresoitisimperativetoimplementTheManagementofEnterprisePersonnelWagesusingcomputers.Actualcompanyfinanceiscombinativeinthissystem.IhavealreadymadedemandanalysisandadoptedVisualC+6.0whichismightyinfunctionasthetooltodevelopthemanagementofenterprisepersonnelwagessystemthatisthesinglemachineversion.SalaryManagementSystemisspeciallydesignedfortheapplicationofdevicemanagingofenterprise.Thewholesystemmustmatchtherequestwhichareoperationsimpletheinterfaceamityvividpracticalandsafeandcompletethemanagementofpersonalandwagesprocess.TheManagementofEnterprisePersonnelWageisanimportantcontentincompanymanage.Thesystemisconsistedwithsixsubsystems.Theyaresystemmaintenancequeryingingandlisting.Thesefunctionscanmeetthedemandsofmostofthebusiness.Iftheenterpriseusesthissystemthemanagementofsalarycanrapidlybeimproved.Inthispaperadescriptionisgivenonthedesignprocessofthissystemfromdemandsanalyzingfeasibilityanalysisframedesigndatabasedesignprogrammingmodule.Programstructurediagramsomemapinterfacesanddatasheetsarepresentedforthepurposeofdescription.Inadditionprogramsourcecodeislistedintheendofthearticle.Keywords:DatabaseVisualC+6.0Salarymanagement目目录录1引言.12系统需求分析.23可行性分析.34总体设计.44.1系统功能结构.44.2设计目标.45系统设计.55.1使用的相关技术介绍.55.2数据库设计.55.2.1数据库概要说明.55.2.2部分数据表的结构.65.2.3部分E-R模型的设计.76主要功能模块设计.96.1建立工程框架.96.2主窗口设计.116.2.1菜单资源设计.116.2.2客户区设计.126.3登录模块设计.136.3.1实现目标.136.3.2设计步骤.136.3.3代码分析.146.4员工录入模块设计.156.4.1实现目标.156.4.2设计步骤.166.4.3代码分析.166.5员工工资添加模块设计.196.5.1实现目标.196.5.2设计步骤.196.5.3代码分析.206.6用户管理模块设计.256.6.1实现目标.256.6.2设计步骤.256.6.3代码分析.266.7总体查询模块设计.296.7.1实现目标.296.7.2设计步骤.296.7.3代码分析.337结论.39谢辞.40参考文献.41附录.42外文翻译.68版权所有:版权所有:dgghate11引言随着我国国民经济建设的蓬勃发展和具有中国特色的社会主义市场经济体制的迅速完善,各个行业都在积极使用现代化的管理工具,不断改善企业的服务质量,提高工作效率。无论是行政职能,还是生产运作的管理要求的不断提高,在很大程度上使企业不得不改变传统的经营管理方式以适应快速发展的社会主义市场经济体制,改变企业管理方式和方法已经成为企业发展的先决条件,建立一个科学高效的信息管理系统是解决这一问题的好方法。运用现代化技术对企业内部的财务进行管理,是提高企业工作效率的有效手段。工资管理作为企业内部财务管理的一个重要方面,逐步被企业管理者所重视。通过计算机管理系统对员工工资进行全面的统计与管理,全面解决了工资管理过程中所遇到的各种问题,并且克服了传统管理方式中的易出错等问题。工资管理系统成为企业现代化管理中的首选管理工具。版权所有:版权所有:dgghate22系统需求分析员工工资管理系统是保证企业对员工工资的管理可以有秩序的进行的管理软件。员工工资管理系统是用于企业对员工工资进行的集中分发管理,开发的总体任务是实现工资管理的系统化、规范化和自动化,从而达到提高工资管理效率的目的1。工资管理系统主要根据公司的要求进行设计,并了解了公司工资的工作流程,该系统是由基本信息管理、工资查询、工资管理、系统管理和帮助等几个功能模块组成,规划系统功能模块如下:(1)基本信息管理模块基本信息管理模块主要包括员工录入、员工删除两个部分。(2)工资查询模块工资查询模块主要包括基本工资查询、浮动工资查询、加班休假查询、总体查询四个部分。(3)工资管理模块工资管理模块主要包括工资发放管理、基本工资管理、浮动工资管理三个部分。(4)系统管理模块系统管理模块主要包括用户管理、修改密码、退出系统三个部分。(5)帮助模块帮助模块主要包括关于一个部分。版权所有:版权所有:dgghate33可行性分析传统的工资管理方法,都是通过人工统计和计算的管理方式进行的。这样的管理方法不但费时费力,也容易产生计算上的错误和疏漏;计算机技术的全面普及,打破了财务管理的传统管理方法,提高了管理效率的同时,克服了传统管理方法中易产生的问题,使管理员能够有序的、全面的对每一位职工进行管理,严格按照工资条款及发放制度计算并发放员工工资。企业工资管理系统可以完成日常工资的管理,如查询、修改、增加、删除以及存储等操作,迅速准确地完成各种工资数据的统计和汇总工作,快速打印出工资报表等,大大提高了企业工资管理效率2。版权所有:版权所有:dgghate44总体设计系统总体设计是把需求转化为软件系统的最重要的环节。系统总体设计的优劣在根本上决定了软件系统的质量3。4.1系统功能结构工资系统的功能结构如图1所示。工资管理系统基本信息管理工资管理工资查询系统管理帮助员工录入员工删除基本工资管理浮动工资管理浮动工资查询加班休假查询总体查询用户管理修改密码退出系统关于基本工资查询工资发放管理图1系统功能图4.2设计目标本系统是根据中小企业的实际需求而开发的,完全能够实现企业对客户的自动化管理,通过本系统可以达到以下目标:(1)系统运行稳定,安全可靠。(2)界面设计美观,人机交互界面友好。(3)信息查询灵活、方便、快捷、准确,数据存储安全可靠。(4)采用多种方式查询数据。(5)操作员可以随时修改自己的口令。(6)对用户输入的数据,系统进行严格的数据检验,尽可能排除人为的错误。5系统设计5.1使用的相关技术介绍VisualC+是MicrosoftVisualStudio开发组件中最为强大的编程工具。一方面,版权所有:版权所有:dgghate5它是当今最为流行的系统开发语言,另一方面,它能够和Microsoft的操作系统无缝结合,开发出高性能的Windows应用程序3。在数据库领域,VisualC+的表现也异常抢眼,它提供了多种数据库开发技术,支持几乎所有的数据库系统,如SQLServer,DB2,Sybase,FoxPro,Access等;而且还提供了良好的开发环境和丰富的文档支持。总之,利用VisualC+可以开发出功能强大、性能优良和界面友好的数据库应用程序,这也正是许多公司长期以来采用VisualC+开发数据库系统的重要原因3。VisualC+提供了可视化的编程环境,不仅可以编写面向用户的应用程序,而且还适用于编写直接对系统或设备操作的底层程序4。SQLServer2000在SQLServer7.0版的基础上扩展了数据库管理系统的性能、可靠性、质量和易用性。由于增加了这几种新的功能,因此它成为大规模联机事务处理(OLTP)、数据仓库和电子商务应用程序的优秀数据库平台5。SQLServer2000是基于SQL客户服务器(CS)模式的数据库系统,其图形化界面使数据库管理更加简洁、灵活,同时又具有丰富的编程接口,为用户从事程序开发提供了更多的方便。使用SQLServer2000可以获得非凡的可伸缩性和可靠性。通过向上伸缩和向外扩展的能力,SQLServer满足了苛刻的电子商务和企业应用程序要求。ADO是ActiveXDataObject(ActiveX数据对象)的缩写,是目前最流行的客户端数据库技术。ADO是建立在OLEDB底层技术之上的高级编程接口6。5.2数据库设计5.2.1数据库概要说明在使用数据库之前,先创建数据库7。数据表是包含数据库中所有数据的数据库对象,表定义为列的集合8。数据库GZFFXT中包括员工基础信息表、员工基本工资表、员工浮动工资表、员工加班休假表、工资发放明细表、用户表6个数据表。图2所示的即为本系统中数据库中的数据表结构图,该数据表结构图包含系统所有数据表。可以清晰地反映数据库信息。图2数据库概要说明版权所有:版权所有:dgghate65.2.2部分数据表的结构表1Ygjcxxb(员工基础信息表)字段名数据类型长度描述YGidYGxmSexWhcdvarcharvarcharcharvarchar3030220员工编号员工姓名性别文化程度表2Ygjbgzb(员工基本工资表)字段名数据类型长度描述YGidYGxmJBgzZWgzGLgzYLbxjvarcharvarcharmoneymoneymoneymoney30308888员工编号员工姓名基本工资职务工资工龄工资养老保险金表3Ygfdgzxmb(员工浮动工资表)字段名数据类型长度描述YGidYGxmGRsdsZFbzBXfSHbzvarcharvarcharmoneymoneymoneymoney30308888员工编号员工姓名个人所得税住房补助保险费生活补助表4Ygjbsjb(员工加班休假表)字段名数据类型长度描述YGidYGxmJiabtsJiabgzSJtsvarcharvarcharintmoneyint3030484员工编号员工姓名加班天数加班工资休假天数版权所有:版权所有:dgghate7Sjkkmoney8休假扣款5.2.3部分E-R模型的设计员工基础信息性别文化程度员工编号员工姓名图3系统部分实体属性图员工基本工资信息基本工资职务工资员工编号员工姓名工龄工资养老保险金图4系统部分实体属性图员工浮动工资信息保险费生活补助员工编号员工姓名个人所得税住房补助版权所有:版权所有:dgghate8图5系统部分实体属性图员工加班休假信息休假天数休假扣款员工编号员工姓名加班天数加班工资图6系统部分实体属性图图7系统部分实体属性图6主要功能模块设计6.1建立工程框架直接利用MFCAppWizard应用程序向导创建一个基于对话框的应用程序9,对话框是Windows应用程序中的一种常用资源,其主要功能是输出信息和接收用户的输入数据10。在VisualC+中建立工资管理系统的基本框架,步骤如下:单击菜单“FileNew”命令,打开“New”对话框,单击“Projects”选项卡,选择“MFCAppWizard()”,输入工程名,并设置路径,如图8所示。用户信息级别密码用户名版权所有:版权所有:dgghate9图8“New”对话框单击“OK”按钮,“MFCAppWizard-Step1”对话框已经打开,如图9所示,选项“Dialogbased”,接着单击“Next”按钮。图9“MFCAppWizard-Step1”对话框在弹出的“MFCAppWizard-Step2of4”对话框中,输入对话框标题,如图10版权所有:版权所有:dgghate10所示。图10“MFCAppWizard-Step2of4”对话框在接下来的对话框中保持默认的选项。设置好的属性如图11所示,单击“OK”按钮后,就完成了新建工程。版权所有:版权所有:dgghate11图11设计好的工程属性6.2主窗口设计6.2.1菜单资源设计在程序设计中,我们所要做的很大一部分工作是对程序的输入进行响应,而我们最常用的选择方式就是用菜单进行选择。在VisualC+6.0中,菜单功能的实现(比如增减菜单和菜单项,定义菜单的ID,菜单的布局以及菜单的初始化,提示信息等)都是通过资源文件和相关函数来实现的11。主窗口菜单设置的主要步骤如下:(1)单击“ResourceView”选项卡,右键单击“GZGLXTResources”选项,选择“Insert”菜单项,打开“InsertResource”窗口,如图12所示。版权所有:版权所有:dgghate12图12“InsertResource”窗口(2)选择“Menu”文件夹,单击“New”按钮,在GZGLXTResources目录下新增一个Menu目录项,菜单ID为IDR_MENU1。双击此菜单,对此菜单项的属性进行设计。6.2.2客户区设计(1)打开对话框IDD_GZGLXT_DIALOG属性窗口,在对话框中添加1个Picture控件,用来存放图片。在Menu组合框中选择IDR_MENU1。如图13所示。版权所有:版权所有:dgghate13图13系统主界面(2)打开ClassWizard窗口,为菜单项ID_EXIT添加代码。程序调用OnOK()函数关闭对话框,退出系统。voidCGZGLXTDlg:OnExit()TODO:AddyourcommandhandlercodehereOnOK()6.3登录模块设计6.3.1实现目标登录模块功能是完成用户登录本系统的操作2,用户登录对话框的设计如图14所示。图14登录对话框6.3.2设计步骤(1)向项目中添加一个新Dialog资源,资源ID为IDD_LOGIN。在IDD_LOGIN对话框资源中单击鼠标右键,执行弹出快捷菜单的“Properties”菜单命令,打开“DialogProperties”对话框。在“DialogProperties”对话框中选择General选项卡,更改其“Caption”文本框内容为“登录框”。版权所有:版权所有:dgghate14(2)从Controls面板上向Dialog资源中添加2个Static、1个Picture、2个Edit,更改资源的属性,并为资源设置相对应的变量,如表5所示。表5资源设置IDPropertiesTypeMemberIDC_EDIT1IDC_EDIT2IDOKIDCANCELIDC_STATIC默认PassWordTRUECaption登录Caption退出TypeBitmapCStringCstringm_namem_pwd6.3.3代码分析(1)引用的外部变量。externCCzyxxbffxxb(2)响应“登录”按钮的代码。voidCLogin:OnOK()TODO:Addextravalidationhere将对话框中编辑框的数据读取到成员变量中UpdateData(true)if(m_name=)MessageBox(请输入用户名)return如果读取数据和用户输入不同,则返回if(ffxxb.HaveCzy(m_namem_pwd)!=1)MessageBox(用户名或密码错误!)returnffxxb.SetCzyName(m_name)jb=1判断当前用户级别if(ffxxb.HaveCzyjb(m_namem_pwdjb)=1)版权所有:版权所有:dgghate15ffxxb.SetCzyjb(jb)CDialog:OnOK()下面在主对话框中添加代码,使对话框在启动时首先打开登录对话框。在主窗口选择OnInitDialog函数,该函数将打开登录对话框,如果用户不是通过单击“登录”按钮关闭对话框,则调用OnOK函数关闭主对话框,具体代码如下:BOOLCWordGLXTDlg:OnInitDialog()CDialog:OnInitDialog().TODO:AddextrainitializationhereCLoginginif(gin.DoModal()!=IDOK)OnOK().returnTRUEreturnTRUEunlessyousetthefocustoacontrol6.4员工录入模块设计6.4.1实现目标添加员工信息,员工录入对话框的设计如图15所示。版权所有:版权所有:dgghate16图15员工录入对话框6.4.2设计步骤(1)向项目中添加一个新Dialog资源,资源ID为IDD_YGTJK。在IDD_YGTJK对话框资源中单击鼠标右键,执行弹出快捷菜单的“Properties”菜单命令,打开“DialogProperties”对话框。在“DialogProperties”对话框中选择General选项卡,更改其“Caption”文本框内容为“员工录入”。(2)从Controls面板上向Dialog资源中添加4个Static、2个Combo、2个Edit,更改资源的属性,并为资源设置相对应的变量,如表6所示。表6资源设置IDPropertiesTypeMemberIDC_EDIT1IDC_EDIT2IDC_COMBO1IDC_COMBO2IDOKIDCANCEL默认默认Caption添加Caption退出CStringCStringCComboBoxCComboBoxm_idm_namem_sexM_whcd6.4.3代码分析(1)打开ClassWizard窗口,添加在OnInitDialog成员函数,向OnInitDialog添加代码如下。BOOLCYgjctjdlg:OnInitDialog()版权所有:版权所有:dgghate17CDialog:OnInitDialog()TODO:AddextrainitializationhereSetIcon(m_hIconTRUE)m_sex.AddString(男)m_sex.AddString(女)m_whcd.InsertString(0专科)m_whcd.InsertString(1本科)m_whcd.InsertString(2研究生)returnTRUEreturnTRUEunlessyousetthefocustoacontrolEXCEPTION:OCXPropertyPagesshouldreturnFALSE(2)当用户单击“添加“按钮时,实现添加员工功能,其响应代码如下voidCYgjctjdlg:OnOK()TODO:AddextravalidationhereCYgjcxxbxxbUpdateData(true)if(m_id=)MessageBox(编号不能为空)returnif(m_name=)MessageBox(姓名不能为空)returnif(xxb.HaveId(m_id)=1)MessageBox(员工编号已存在)returnxxb.SetYGid(m_id)版权所有:版权所有:dgghate18xxb.SetYGxm(m_name)CStringsexwhcdm_sex.GetWindowText(sex)if(sex=)MessageBox(性别不能为空)return从组合框中读取文本m_sex.GetLBText(m_sex.GetCurSel()strsex)xxb.SetSex(strsex)m_whcd.GetWindowText(whcd)if(whcd=)MessageBox(文化程度不能为空)returnm_whcd.GetLBText(m_whcd.GetCurSel()strwhcd)xxb.SetWHcd(strwhcd)xxb.sql_insert()向浮动工资表添加编号、姓名CYgfdgzxmbxmbxmb.SetYGid(m_id)xmb.SetYGxm(m_name)xmb.sql_insert()向基本工资表添加编号、姓名CYgjbgzbgzbgzb.SetYGid(m_id)gzb.SetYGxm(m_name)gzb.sql_insert()向加班休假表添加编号、姓名CYgjbsjbsjbsjb.SetYGid(m_id)sjb.SetYGxm(m_name)版权所有:版权所有:dgghate19sjb.sql_insert()CDialog:OnOK()避免漏输现象:对于一个软件来说,在保证一定功能的基础上,给使用者留出的出错机会越少,那么开发出来的软件越成功。本系统在用户漏输某个重要字段时,系统会弹出提示对话框警告,这个功能主要是在保存时判断文本框的值是否为空,如果不为空,就继续向下执行;如果为空,弹出错误提示12。6.5员工工资添加模块设计6.5.1实现目标添加员工实际发放的工资情况,员工工资添加对话框设计如图16所示。图16员工工资添加对话框6.5.2设计步骤(1)向项目中添加一个新Dialog资源,资源ID为IDD_YGGONGZITJ。在IDD_YGGONGZITJ对话框资源中单击鼠标右键,执行弹出快捷菜单的“Properties”菜单命令,打开“DialogProperties”对话框。在“DialogProperties”对话框中选择General选项卡,更改其“Caption”文本框内容为“员工工资添加”。版权所有:版权所有:dgghate20(2)从Controls面板上向Dialog资源中添加19个Static、17个Edit、2个Button控件,更改资源的属性,并为资源设置相对应的变量,如表7所示。表7资源设置IDPropertiesTypeMemberIDC_EDIT1IDC_EDIT2IDC_EDIT3IDC_EDIT4IDC_EDIT5IDC_EDIT6IDC_EDIT7IDC_EDIT8IDC_EDIT9IDC_EDIT10IDC_EDIT11IDC_EDIT12IDC_EDIT13IDC_EDIT14IDC_EDIT15IDC_EDIT16IDC_EDIT17IDOKIDCANCELIDC_BUTTONsyyeIDC_BUTTONyfgz默认默认默认默认默认默认默认默认默认Read-onlyTRUE默认Read-onlyTRUE默认默认默认Read-onlyTRUERead-onlyTRUECaption添加Caption退出Caption上月余额Caption应发工资CStringCStringintintintintintintintCEditintCEditintintintCEditCEditm_idm_namem_jbgzm_zwgzm_glgzm_zfbzm_shbzm_bxfm_jiabtsm_jiabgzm_sjtsm_sjgzm_ylbxjm_grsdsm_sfgzm_yfgzm_syye6.5.3代码分析(1)双击“IDC_EDIT9”控件,自动生成OnChangeEdit9函数,实现用户添加加班天数时,加班工资自动计算并显示,具体代码如下:voidCYggztjdlg:OnChangeEdit9()TODO:IfthisisaRICHEDITcontrolthecontrolwillnotsendthisnotificationunlessyouoverridetheCDialog:OnInitDialog()functionandcallCRichEditCtrl().SetEventMask()版权所有:版权所有:dgghate21withtheENM_CHANGEflagORedintothemask.UpdateData(true)CStringstrstr.at(%dm_jiabts40)m_jiabgz.SetWindowText(str)UpdateData(false)TODO:Addyourcontrolnotificationhandlercodehere(2)双击“上月余额”按钮,系统自动添加消息响应函数OnBUTTONsyye,具体代码如下。voidCYggztjdlg:OnBUTTONsyye()TODO:AddyourcontrolnotificationhandlercodehereUpdateData(true)if(m_id=)MessageBox(请先填写员工编号)returnADOConnm_AdoConnm_AdoConn.OnInitADOConn()t=CTime:GetCurrentTime()intmyCStringstrm=t.GetMonth()-1y=t.GetYear()if(m=0)m=12y=y-1CGzffmxbmxbif(mxb.Havesyye(m_idym)=1)版权所有:版权所有:dgghate22CStringsqlsql.at(selectfromgzffmxbwhereygid=%sandyear(sjian)=%iandmonth(sjian)=%im_idym)m_AdoConn.GetRecordSet(_bstr_t)sql)str=(char)(_bstr_t)m_AdoConn.m_pRecordset-GetCollect(Yu_E)m_syye.SetWindowText(str)elsem_syye.SetWindowText(0)UpdateData(false)m_AdoConn.ExitConnect()在头文件中添加下列代码。CTimet(3)双击“应发工资”按钮,系统自动添加消息响应函数OnBUTTONyfgz,具体代码如下:voidCYggztjdlg:OnBUTTONyfgz()TODO:AddyourcontrolnotificationhandlercodehereUpdateData(true)CStringsyyem_syye.GetWindowText(syye)if(syye=)MessageBox(请先添加上月余额)returnintyfgzyfgz=atoi(syye)+m_jbgz+m_glgz+m_zwgz+m_shbz+m_zfbz-m_ylbxjyfgz+=(-m_bxf+m_jiabts40-m_sjts40-m_grsds)CStringstr版权所有:版权所有:dgghate23str.at(%dyfgz)m_yfgz.SetWindowText(str)(4)为“添加”按钮添加代码,实现添加员工工资功能,代码如下:voidCYggztjdlg:OnOK()TODO:AddextravalidationhereUpdateData(true)CYgjcxxbxxbCStringyfgzm_yfgz.GetWindowText(yfgz)if(m_id=)MessageBox(编号不能为空)returnif(xxb.HaveId(m_id)!=1)MessageBox(员工编号不存在)returnif(m_name=)MessageBox(姓名不能为空)returnif(xxb.Havename(m_idm_name)!=1)MessageBox(员工不存在)returnif(yfgz=)MessageBox(应发工资不能为空)版权所有:版权所有:dgghate24returnCGzffmxbmxbmxb.SetYGid(m_id)mxb.SetYGxm(m_name)mxb.SetGLgz(m_glgz)mxb.SetJBgz(m_jbgz)mxb.SetYLbxj(m_ylbxj)mxb.SetZWgz(m_zwgz)mxb.SetBXf(m_bxf)mxb.SetGRsds(m_grsds)mxb.SetSHbz(m_shbz)mxb.SetZFbz(m_zfbz)mxb.SetJiaBts(m_jiabts)intjiabgzjiabgz=m_jiabts40mxb.SetJiaBgz(jiabgz)mxb.SetSjts(m_sjts)intsjkksjkk=m_sjts40mxb.SetSJkk(sjkk)mxb.SetYFje(atoi(yfgz)mxb.SetSFje(m_sfgz)mxb.sql_insert()CYgjbsjbsjbsjb.SetJiaBts(m_jiabts)sjb.SetJiaBgz(jiabgz)sjb.SetSjts(m_sjts)sjb.SetSJkk(sjkk)sjb.sql_update(m_id)CDialog:OnOK()版权所有:版权所有:dgghate256.6用户管理模块设计6.6.1实现目标实现新建、删除用户功能,用户管理对话框设计如图17所示。图17用户管理对话框6.6.2设计步骤(1)向项目中添加一个新Dialog资源,资源ID为IDD_XINJYH。在IDD_XINJYH对话框资源中单击鼠标右键,执行弹出快捷菜单的“Properties”菜单命令,打开“DialogProperties”对话框。在“DialogProperties”对话框中选择General选项卡,更改其“Caption”文本框内容为“用户管理”。(2)从Controls面板上向Dialog资源中添加4个Static、1个Combo、3个Edit、1个Button控件,更改资源的属性,并为资源设置相对应的变量,如表8所示。版权所有:版权所有:dgghate26表8资源设置IDPropertiesTypeMemberIDC_EDIT1IDC_EDIT2IDC_EDIT3IDC_COMBO1IDOKIDC_BUTTON1IDCANCEL默认PasswordtruePasswordtrue默认Caption添加Caption删除Caption退出CStringCStringCStringCComboBoxm_namem_pwdm_pwd1m_jb6.6.3代码分析(1)添加OnInitDialog()函数,初始化Combo控件,具体代码如下:BOOLCXinjyhdlg:OnInitDialog()CDialog:OnInitDialog()TODO:AddextrainitializationhereSetIcon(m_hIconTRUE)m_jb.AddString(系统管理员)m_jb.AddString(普通管理员)returnTRUEreturnTRUEunlessyousetthefocustoacontrolEXCEPTION:OCXPropertyPagesshouldreturnFALSE(2)为“添加”按钮添加消息响应函数,代码如下:voidCXinjyhdlg:OnOK()TODO:AddextravalidationhereUpdateData(true)if(m_name=)MessageBox(请输入用户名)returnCStringjb版权所有:版权所有:dgghate27m_jb.GetWindowText(jb)if(jb=)MessageBox(级别不能为空)returnif(m_pwd=)MessageBox(请输入密码)returnif(m_pwd1=)MessageBox(请确认密码)returnif(m_pwd!=m_pwd1)MessageBox(两次密码不同)returnCCzyxxbxxbif(xxb.Havename(m_name)=1)MessageBox(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论