您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 薪酬管理 > 04用VC制作一个工资管理系统
案例四用VC++制作一个工资管理系统关键词:VC++数据库数据表控件绑定统计计算4.1课程设计的目的和意义工资管理是任何企事业单位都需要进行的一项工作,因此,开发制作工资管理系统具有较大的社会现实意义,同时工资管理系统的最大特征是数据处理,它是数据库应用系统的典范,它具有一切数据库应用系统的特征,如数据录入,数据统计和数据报表等,其系统结构与现实生活紧密结合,具体直观。工资管理系统也是数据库应用开发中经常进行例证的好例子,它的开发应用简单而又不失一般性。作为一个案例,我们仍需要重复进行一些过程,如创建工程框架,引入数据源,建立消息映射,最终实现统计计算。本程序比较简单,我们的目的是让读者对VC的编程逐步加以理解,它的意义是非常重要的。4.2系统功能设计在本系统的设计中,将主要实现如下的一些功能:增加记录功能、修改记录功能、删除记录功能、刷新记录功能,最后实现统计计算功能。4.3数据库与数据表的设计作为工资管理系统,它是数据库应用系统数据处理的典范,数据库应用系统开发的前提是首先开发数据库和数据库中的数据表。因此在本案例中,我们仍采用MicrosoftAccess2003创建数据库和数据表。为此我们先定义一个“职工工资数据表”的结构,如表4.1所示。表4.1“职工工资数据表”结构字段名称字段类型字段大小小数位数索引必须填写年份数字整型是月份数字整型是输入日期日期/时间默认是职工编号数字整型是姓名文本16是部门文本20是基本工资数字长整型自动是业绩工资数字长整型自动是奖金数字长整型自动是津贴数字长整型自动是各种补助数字长整型自动是应发数数字长整型自动是水电费数字长整型自动是房租数字长整型自动是储蓄数字长整型自动是会费数字长整型自动是保险数字长整型自动是扣除总计数字长整型自动是实发工资数字长整型自动是创建数据库及其数据表的步骤如上:(1)启动MicrosoftOffice2003中的MicrosoftAccess应用程序,出现图4.1所示界面,通过该界面可以创建一个新的数据库或打开一个已经存在的数据库。图4.1新建数据库选择(2)选择创建新数据库,即选择“空Access数据库”选项。(3)单击“确定”按钮之后出现保存对话框,确定保存数据库的文件位置(D:\VC++写作案例\CH4\)并给定数据库名称:工资管理数据库;然后出现图4.2所示界面。图4.2数据库中的数据表设计界面在数据库设计界面中,用户可以打开已经存在的数据表,也可以创建新的数据表。(4)单击“设计”菜单,即出现一个数据表设计器,用户可以在其中设计一个新的数据表结构,如图4.3所示。图4.3数据表设计器在MicrosoftAccess2003数据库设计器中,用户可以定义数据表的字段名称、字段类型、字段大小等数据表结构的内容。数据表结构一经确定,用户可以打开该数据表,在数据表中输入一些基本数据,以在后面的系统设计中体现设计的效果。最后,系统自动将创建的数据表保存在“D:\VC++写作案例\CH4\32资管理数据库”中,将创建的数据表命名为“职工工资数据表”。注意,在微软的MicrosoftAccess各版本之间,如在MicrosoftAccess98与MicrosoftAccess2003中,采用旧版本创建的数据库及其数据库中的数据表如要在新的版本中运用,往往需要在新版本中进行转换才行。4.4创建工资管理系统基本框架在前面我们已经创建了“工资管理数据库”、“职工工资数据表”。它可为应用程序提供一个数据源。应用程序就是对该数据源的记录进行访问、增加、删除以及数据管理的一切操作。有了这一切的工作,用户就可以着手进行应用系统的构建了。与前面的案例一样,在VC++应用系统创建中,需要通过向导先创建一个应用程序框架,然后再加入数据控件,与数据源进行绑定,并进行程序的修改与加工制作。创建“工资管理系统”应用程序框架的步骤如下:(1)结束数据库的创建并启动VC++,出现VC++主控界面。(2)在VC++主控界面中单击“文件|新建...”菜单项,出现新建工程类型选择对话框,在工程类型列表中选择MFCAppWizard(EXE)工程类型。(3)输入工程名称为“工资管理系统”,并选择Win32平台类型。(4)单击“确定”按钮,进入文档类型设置。(5)选择单文档类型,即创建一个单文档界面的应用程序,设置资源使用语言为中文,选择文档/查看体系结构支持。(6)单击“下一步”按钮,进入框架设置的第2步,出现图4.4所示对话框。在该对话框中,需要用户对数据库的类型作一些相关的选择。图4.4程序框架设置的第2步(7)选择“查看数据库不使用文件支持”;这时候DataSource按钮处于可用状态(或激活状态);在这一种选择下,VC+将为应用系统引入数据环境,即数据源,该数据源就是我们在前面创建的“工资数据库”,而不使用其他类型数据的文件支持。但数据源在系统制作中的引入需要用一定的驱动程序为之进行。(8)单击“DataSource”按钮,出现图4.5所示的选择数据源类型的对话框。图4.5数据源创建类型注意,在ODBC数据源文件列表中,我们已经创建了一个ODBC数据源文件,因此可以在其中直接选择引用即可。如果没有“工资管理数据库”这样的文件,则往往需要用操作系统控制面板中的ODBC程序加以创建,其方法参考案例一。(9)单击OK按钮,出现数据源中的数据表,即工资数据库中的数据表。选择“职工工资数据表”,如图4.6所示。图4.6选择职工工资数据表(10)单击OK按钮选定该数据表。然后返回到图4.4所示对话框,完成数据源的创建工作。(11)在图4.4所示对话框中单击“完成”按钮,即完成应用程序框架的生成工作,出现工程框架创建的全部信息,该信息将提示用户所创建的应用程序框架包括的内容,如:应用系统名称、界面类型、适合的操作系统、类文档的创建和系统特色等,如下所示:Applicationtypeof工资管理系统:SingleDocumentInterfaceApplicationtargeting:Win32Classestobecreated:Application:CMyAppin工资管理系统.hand工资管理系统.cppFrame:CMainFrameinMainFrm.handMainFrm.cppDocument:CMyDocin工资管理系统Doc.hand工资管理系统Doc.CppRecordView:CMyViewin工资管理系统View.hand工资管理系统View.cppRecordset:CMyset.in工资管理系统Set.hand工资管理系统Set.cpp(connectedtotable‘[职工工资数据表]’indatasource‘工资管理数据库’)Features:+Initialtoolbarinmainframe+Initialstatusbarinmainframe+FrintingandPrintPreviewsupportinview+3DControls+UsessharedDLLimplementation(MFC42.DLL)+Databasesupport,withoutfilesupport+ActiveXControlssupportenabled+Localizabletextin:中文[中国]确认创建信息之后,出现应用程序框架界面,如图4.7所示。图4.7应用程序框架界面4.5开发工资处理界面如前所述,应用系统向导只能生成一个应用程序基本框架,该框架还不具备任何功能,我们需要在框架的基础上进行系统各种功能的制作。通常一个应用程序框架生成两个对话框,一个是IDD_ABOUTBOX对话框,它是一个说明该系统的对话框,几乎由向导自动完成,如图4.8所示。图4.8ABOUTBOX对话框该对话框仍然是基本的,如果用户需要修饰或修改,可以根据自己的需要进行。在基本框架中另外一个对话框就是主对话框IDD_MY_FORM,它是我们加工制作的主要内容,数据源也是专门为该对话框引入的。4.5.1主对话框IDD_MY_FORM中控件的加入与布局在工资管理系统中,主对话框主要用于处理工资管理的一切内容。制作该对话框的主要步骤如下:(1)在主对话框IDD_MY_FORM中将提示文本框“TODO:在这个对话框里设置表格控制。”删除。(2)在主对话框IDD_MY_FORM中放入各种需要的控件,如标签控件、编辑框控件、命令按钮控件,其对话框布局如图4.9所示。图4.9主对话框IDD_MY_FORM控件布局其中,各个控件的属性设置如表4.2-表4.5所示。表4.2标签对象的基本属性ID标题内容IDC_STATICCAPTION职工工资管理系统IDC_STATICNE年份IDC_STATICYF月份IDC_STATICZGBH职工编号IDC_STATICZGXM职工姓名IDC_STATICZGBM部门IDC_STATICJBGZ基本工资IDC_STATICJJ奖金IDC_STATICYJGZ业绩工资IDC_STATICJT津贴IDC_STATICGZBZ各种补助IDC_STATICRDF水电费IDC_STATICFZOU房租IDC_STATICCX储蓄IDC_STATICHF会费IDC_STATICBX保险IDC_STATICYFHJ应发合计IDC_STATICKCHJ扣除合计IDC_STATICSFGZ实发工资表4.3编辑框控件的基本属性和编辑内容ID编辑内容IDC_EDITNF年份IDC_EDITYF月份IDC_EDITZGBH职工编号IDC_EDITZGBM所在部门IDC_EDITZGXM职工姓名IDC_EDITJBGZ基本工资IDC_EDITJJ奖金IDC_EDITYJGZ业绩工资IDC_EDITJT津贴IDC_EDITGZBZ各种补助IDC_EDITRDF水电费IDC_EDITFZOU房租IDC_EDITCX储蓄IDC_EDITHF会费IDC_EDITBX保险IDC_EDITYFHJ应发合计IDC_EDITKCHJ扣除合计IDC_EDITSFGZ实发工资表4.4命令按钮对象的基本属性ID标题内容IDC_BUTIONFIRST|《-第一条IDC_BUTIONNEXT-》下一条IDC_BUTIONPREV《-前一条IDC_BUTIONLAST-》|最后一条IDC_BUTIONSUM执行统计IDC_RADIOADD增加记录IDC_RADIODELETE删除记录IDC_RADIOUPDATE刷新记录表4.5分组控件对象的基本属性ID标题IDC_STATICDATA工资数据处理IDC_STATICBROWSE工资数据浏览IDC_STATICADDDELETUPD增加与删除IDC_STATICCOUNT个人工资统计4.5.2为编辑框控件建立数据字段映射在对话框中的一切编辑框控件,均是用于进行数据处理和数据显示的,但首先我们应该为它们建立字段映射,即将创建的数据集中的每一个字段与一个编辑框进行‘数据绑定”。其方法我们在前面的案例中已经有所涉及。我们以其中的一个编辑框,即“年份”编辑框为例,说明为编辑框与数据集中的字段建立映射关系的方法。为此进行如下操作:(1)在主对话框IDD_MYFORM中选取“年份”编辑框控件。(2)用鼠标右键单击该对话框,出现一个快捷菜单。(3)在快捷菜单中单击“建立类向导”,出现类向导对话框。(4)在类向导对话框中将页面切换至MemberVariables页面并设置类名为CmySet。该对话框列出了数据集的全部字段名、字段类型和字段的成员变量名称,但成员变量名是在创建数据源时自动生成的,往往不便于与编辑框建立映射关系,为此将全部成员变量名称删除,并重新定义字段的成员变量名称。重新定义后的字段变量名称如图4.10所示。图4.10重新定义的字段变量名称(5)在Classname列表中选择CmyView,出现为编辑框控件与字段成员变量建立消息映射的页面,如图4.11所示。图4.1l编辑框控件与字段变量映射页面(6)选中IDC_EDITNF(年份编辑)控件资源索引,再单击A
本文标题:04用VC制作一个工资管理系统
链接地址:https://www.777doc.com/doc-1007035 .html