用VC++制作一个人事管理系统Word文件下载.docx
《用VC++制作一个人事管理系统Word文件下载.docx》由会员分享,可在线阅读,更多相关《用VC++制作一个人事管理系统Word文件下载.docx(23页珍藏版)》请在冰豆网上搜索。
字段名称
字段类型
字段大小
索引
必须填写
职工编号
数字
长整型
惟一、主索引
是
职工姓名
文本
20
职工性别
2
所在部门
30
职工年龄
整型
工作时间
日期/时间
8
基本工资
单精度型
职称
简历
备注
默认
利用MicrosoftAccess2003创建数据库及其数据表的步骤如下:
(1)启动MicrosftAccess2003的MicrosoftAccess应用程序,出现图1.8所示界面。
通过该界面就可以创建一个新的数据库或打开一个已经存在的数据库。
图1.8
选择创建数据库的方式
(2)选择创建新数据库,即选择“空Access数据库”选项。
(3)单击“确定”按钮之后出现保存对话框,确定保存数据库文件的位置(D:
\VC++写作案例\CH1\人事管理数据库)和文件名称之后即创建了一个空的数据库然后出现图1.9所示窗口。
图1.9
数据库中的数据表操作窗口
数据库只是数据表的容器,在数据库操作窗口中,用户可以打开已经存在的数据表,也可以创建新的:
数据表+并可以对已经存在的数据表进行删除。
创建一个数据表本质上就是创建一个数据表的结构-,即定义数据表的字段名、宇段大小和数据类型等等。
这一切工作均是通过“设计”菜单进行的。
(4)单击“设计”菜单,可以打开一个新的数据表结构的设计器,如图1.10所示。
图1.10
数据表设计器
在MicrosoftAccess2003数据表设计器中,用户可以定义数据表的字段名称、字段类型、字段大小等内容。
数据表结构一经确定,可以打开该数据表,在数据表中输入一些基本数据,以在后面的系统设计中体现设计的效果(数据表记录可参考表1.2所示内容,注意,考虑到表的宽度,表中的字段名缩写,实际运用时不能缩写,需要与数据表结构设计器中的字段名称一致)。
表1.2
数据表记录内容
编号
姓名
性别
部门
年龄
100001
张成东
男
化工学院
48
85/12/12
650.00
讲师
略
100002
李英
女
机械学院
85/02/11
950.00
副教授
100003
张记成
数理学院
47
86/03/23
990.00
教授
200001
陈东方
生物学院
200002
张小英
电机学院
46
87/03/11
200003
吴天洗
光机学院
87/03/23
最后,系统自动将创建的数据表保存在“D:
\C++写作案例\CHI\人事管理数据库”中。
注意,在微软的MicrosoftAccess各种版本之间,如MicrosoftAccess98与MicrosoftAccess2003之间,采用旧版本创建的数据库或采用一些其他工具—创建的数据库及数据库中的数据表需要在新的版本中运用时,往往需要在新版本中进行转换才行。
1.4创建人事管理应用程序框架
在前面我们已经介绍了多种数据库和数据表的创建方法,为方便和统一起见,在本书的案例中,我们均采用MicrosoftAccess2003进行数据库的创建,在前面我们已经用MicrosoftAccess2003创建了“人事管理数据库”,并在该数据库中创建了“人事管理数据表”。
数据库与数据表是任伺数据库应用系统开发所不可缺少的内容,它为数据库应用系统创建了数据环境,提供了数据访问对象。
在创建了需要的数据库和数据表后,用户就可以着手进行应用系统的构建了。
与其他的应用开发平台一样,在VC++应用系统创建中,往往可以通过向导先创建一定的应用程序框架,然后再加入数据控件,与数据源进行绑定,并进行程序的修改与加工制作。
1.4.1
创建应用程序框架
在这一节里我们将创建一个人事管理应用系统的框架,其方法和步骤如下:
(1)结束数据库的创建并回到VC++主控界面。
(2)单击“文件|新建...”菜单项,在出现的对话框选择新建工程类型。
在工程类型列表中选择MFCAppWizard(exe)工程类型。
(3)输入工程名称为“人事管理系统”,并选择适合的Win32平台类型。
(4)单击“确定”按钮,进入文档类型设置。
(5)选择单文档类型,即创建一个单文档界面的应用程序,设置资源使用语言为中文,选择文档/查看体系结构支持。
(6)单击“下一步”按钮,进入框架设计的第2步,出现图1.11所示对话框,在该对话框中,需要用户对数据库的应用作一些相关的选择。
(7)选择“查看数据库而不使用文件支持”选项,这时候DataSource按钮处于可用状态(或激活状态),VC++将为应用系统引入数据环境,即数据源,该数据源就是我们在前面创建的“人事管理数据库”,而不使用其他类型数据的文件支持。
但数据源在系统制作中的引入需要用一定的驱动程序为之进行。
图1.11
程序框架第2步设置
(8)单击DataSource按钮,出现图1.12所示的选择数据源驱动程序类型的对话框。
图1.12
数据源驱动程序选择
在这里我们选择ODBC数据源类型,即选择一种开放式数据源连接的驱动程序类型作为系统的数据源。
往往在单击OK按钮后会出现找不到该数据库文件的信息提示,因为作为ODBC数据源,必须先创建一个数据源名并进行数据源登录。
数据源名称创建与登录可以采用多种方式进行,我们将在本书中分不同的情况加以说明。
这里我们将采用一种通用的方法,即在MicrosoftWindows98(MicrosoftWindows2000/Me/XP中也一样)中,利用开放式数据源创建与连接的公用程序ODBC进行数据源名称的创建与连接。
其方法如下;
(9)打开MicrosoftWindows98控制面板。
(10)双击ODBCDataSource(32Bit)程序图标,出现“ODBC数据源管理器”对话框,如图1.13所示。
(11)在“用户数据源”列表框中选择名称为“MSAccessDatabase”的选项。
(12)单击“添加”按钮,然后在出现的对话框中选择使用何种驱动程序来安装数据源。
如图1.14所示。
图1.13
ODBC数据源管理器
图1.14
选择安装数据源的驱动程序
在图1.14中选择“MicrosoftAccessDriver(*.mdb)”,作为安装数据源的驱动程序。
(13)单击“完成”按钮,出现数据源安装对话框,如图1.15所示。
图1.15
数据源安装对话框
作为所创建或安装的数据源,需要一个数据源名称,以便于在应用系统制作中加以引用和识别,因此,需要为数据源命名,这里我们将其命名为“人事管理数据库”。
然后在图1.15所示对话框中对该数据源进行描述户可以填写如下内容:
“该数据库用于创建人事管理系统”。
数据库文件“人事管理数据库”是保存在磁盘文件中的,为此需要引入该数据库作为数据源。
(14)单击“选择”按钮,出现图1.16所示的数据库选取对话框。
图1.16
数据库文件选取
选取数据库文件并确认之后,回到图1.15所示对话框,再在图1.15所示对话框中单击“确定”按钮,回到ODBc数琚源管理器对话框,结束数据源的安装过程。
此后可以发现,在ODBC数据源管理器中出现了“人事管理数据库”这样一个数据源,它就是供用户使用的本地机上的ODBC数据源,如图1.17所示。
图1.17数据源安装结束
(15)有了本地机上可供用户使用的数据源之后,在图1.12所示对话框的ODBC列表中选择“人事管理数据库”数据源即可(该数据源就是前面安装的适合于本地机用户使用的ODBC数据源文件)。
(16)单击OK按钮,出现该数据源中的数据表、数据查询或视图的选择对话框,因为在一个数据源也即一个数据库中,往往存在多个数据表、查询或视图。
这里选择的数据表就是“人事管理系统”的单文档界面所使用的数据表“人事管理数据表”,如图1.18所示。
图1.18
选择数据源中的数据表
单击OK按钮确认后,即回到数据源设置对话框,如图1.19所示。
图1.19
数据源设置对话框
(17)单击“完成”按钮,出现图1.20所示的应用程序的基本框架。
图1.20
应用程序的基本框架
最后将显示“人事管理系统”工程向导全部设置过程的信息,即出现一个信息框,该信息框中,指出了应用系统的名称、文档的类型、适合的操作平台、工程的头文件、工程的特色等。
在图1.20中,除出现一个对话框之外,似乎其他什么也没有出现。
事实上,前面的一切工作仅为该工程提供了一个数据源,生成了一个框架。
如何在该数据环境中制作应用程序呢?
它需要用VC++的相关控件来对该数据源进行应用,这将在后面的过程中加以说明。
1.5
制作人事管理主窗体
在应用程序框架中,已经生成了一个主窗体IDD_MY_FORM(对话框),该窗体中有一个静态文本,提示用户在该窗体中进行表格控制,即在对话框中设计各种对象。
在一个数据库应用系统中,主要的操作是对数据编辑控件和相关的数据源控件的运用。
这里,主要介绍数据编辑框的运用方法,即如何将编辑框控件与数据源进行绑定,从而编辑数据表中的字段。
1.5.1
主窗体的基本制作
在向导中,已经生成了一个对话框对象,即IDD_MY_FORM,对已经选择了向导过程的工程类型而言,该对话框便成为了工程中的主对话框,它在运行时首先出现,在这种类型的工程中,数据源也正是为该对话框引入的(注:
其他类型的工程未必如此)。
为了制作该对话框,可以按如下操作进行:
(1)单击VC++主菜单中的“工具|定制”菜单项,出现“定制”对话框,如图1.27所示。
(2)在“工具栏”列表中选中Controls选项,则VC++开发中的常规控件出现在开发平台之中,如图1.28所示。
如果控件面板已经出现在工作区之中,可以省略这一步。
控件面板中的控件主要是基于常规界面制作的需要而定制的,它能够实现很多功能,如命令按钮、标签控件、组合框控件、复选按钮、单选按钮、页框控件等,它们是一切Windows应用程序程序中最常用的控件。
除常规控件之外,往往我们还需要用到其他的一些ActiveX控件,这将在以后的案例中加以运用。
图1.27
工具定制对话框
图1.28
VC++常规控件
(3)在工程框架的主窗体IDD_MY_FORM中加入10个静态标签控件,它们分别标志相关的数据字段,如表1-3所示。
表1.3
静态标签控件的基本属性
控件ID
控件类型
控件标题
IDC_STATIC9BT
静态标签
人事管理系统
IDC_STATICZGBH
IDC_STATICZGXM
IDC_STATICZGLL
IDC_STATICSZBM
IDC_STATICZGXB
IDC_STATICFF
婚否
IDC_STATICJBGZ
IDC_STATICJL
IDC_STATICZTIM
(4)右击一个静态标控件,出现快捷菜单。
(5)在快捷菜单中单击“属性”选项,即出现标签控件的文本属性设置对话框,如图1.29所示。
图1.29
标签控件的属性设置对话框
标签属性分为一般属性、标签风格(特色)届性和扩展风格属性三种。
标签控件的上要功能是用束进行说明,因此它的标题和资源索引号ID是最关键的属性。
如果需要一个具有一定特色的标签以修饰窗体,可以设置风格和扩展的风格属性内容。
(6)在窗体中加入9个编辑柜控件,其基本属性如表1.4所示。
表1.4
编辑框控件的基本属性
控件ID
绑定字段
IDC_EDITZGBH
编辑框控件
IDC_EDITZGXM
IDC_EDITZGLL
IDC_EDITSZBM
IDC_EDITZGXB
IDC_EDITFF
IDC_EDITJBGZ
IDC_EDITJL
IDC_EDITGZTIM
编辑柜控件的ID号设置方法与标签控件的ID号设置方法相同,只需打开属性设置对话框进行设置即可。
最关键的是需要将每一个编辑框控件与相关的数据表字段进行绑定,然后在工程运行期才能对数据源进行修改和更新。
其控件在主窗体中的布局如图3.30所示。
图1.30
编辑控件的布局效果
1.5.2
编辑框控件与数据表字段的绑定
在前面我们已经为工程创建了一个数据源,该数据源本质上就是被主对话框引用的数据源。
在对话框中,我们又放入了一些编辑框控件,如何将这些编辑框控件与数据源进行连接和数据绑定呢?
为编辑框控件进行数据绑定的方法如下:
(1)选取一个编辑框并单击鼠标右键,出现一个快捷菜单。
(2)在快捷菜单中单击“建立类向导”选项,则出现类向导对话框。
(3)切换到MemberVariables选项卡,并在Classname列表中选择CMySet选项,如图1.31所示。
图1.31
成员变量定义
注意,在图1.31中列出了我们创建的数据表的所有字段名称,并为每一个字段赋予了一个成员。
在VC++中一些资源均是按成员及成员变量进行编译和识别的,列字段自动生成的成员名均是按先后顺序自动排列的,如m_column1代表数据源中的第1个类成员。
对于这样的成员变量标志,在众多的编辑框与众多的字段成员变量建立映射关系时,往往难以区分。
因此,用户需要将字段成员变量名称修改成容易识别的成员变量名称,如m_ZGBH,它就代表该数据集中的第1个列字段作为VC++类成员的第1个字段成员“职工编号”的变量。
(4)单击DeleteVariable按钮,一一地将成员变量名称全部删除。
(5)然后再单击AddVariable按钮,为每一个字段成员增加一个特殊标记的变量名称,新的字段成员变量名如图1.32所示。
接下来我们需要为每一个编辑框控件与字段成员建立映射关系。
在放置编辑框时,我们特地为它设置了资源索引号ID,如职工编号编辑框控件的索引号为IDC_EDITZGBH,根据它的索引标记就可以建立与数据表字段之间变量的映射。
(6)在图1.32中将类名(Classname)切换为CMyView,出现类成员列表,其中就包含了全部的编辑框控件的索引编码,如图1.33所示。
图1.32
全部字段新的变量名
图1.33
成员列表
现在我们就需要将每一个编辑框成员与相应的数据表字段变量建立映射,在图1.33中出现的第1个编辑框就是“职工编号”编辑框,用户可以从它的资源索引编码看出来。
(7)在图1.33中选择“职工编号”编辑框控件索引号;
单击AddVariable按钮,出现图1.34所示的增加变量对话框。
为编辑框增加内存变量,并不需要重新为它创建新的变量,只需从数据源的字段变量列表框中选择数据表的成员变量即可,建立编辑框控件与数据表字段成员变量之间的一一映射关系。
通过这一关系,将对话框中的编辑框控件与数据源的字段联系起来,从而在工程运行时用户可以通过编辑框控件编辑数据表的记录。
(8)单击OK按钮,即完成建立“职工编号”编辑框与“职工编号”成员变量之间的映射。
以同样的方法可以建立每一个编辑框控件与其他字段成员变量之间的映射,完成全部映射过程。
图1.34
映射变量选择
最后,编译执行工程,其运行效果如图1.35所示。
图1.35
工程运行效果
在工程运行时,可以在编辑框中对数据进行编辑,也可以通过导航器对数据表进行浏览。
此时,就完成了人事管理系统的基本制作过程。
1.6
为系统实现增加、删除、排序与查询功能
这一节我们将为系统增加一些功能,在前面的窗体制作中,可以用编辑框控件对数据记录进行编辑和浏览。
但这些功能是有限的,它们是通过向导生成的菜单和快捷键对记录进行导航和编辑的,但不具有添加、删除的功能。
往往一个数据库应用系统的功能不止是数据的收集和浏览,而更重要的是它对于数据的加工利用。
因此,本节除了实现对于数据的增加、删除功能之外,我们还将开发对于数据的查询和排序的功能。
1.6.1
窗体的新布局
为了实现相应的功能,我们首先按如下操作对窗体进行新的布局:
(1)在窗体中放入四个命令按钮控件。
(2)设置命令按钮控件的资源索引ID号,如表1.5所示。
表1.5
命令按钮控件的基本属性
IDC_ADDRECO
命令按钮
增加记录
IDC_RECODELE
删除记录
IDC_SORTRECO
排序记录
IDC_FILTERRECO
筛选记录
对话框布局如图1.36所示。
图1.36
窗体布局
1.6.2
增加新的对话框(窗体)及创建类成员
在查询或过滤记录时,往往需要一个对话框,用于输入查询的条件。
在VC++工程中增加对话框的方法如下:
(1)单击VC++主菜单中的“插入|资源”菜单项。
(2)在资源类型的选择对话框中,选择对话框(Dialog)类型的资源,插入到工程中,出现一个新的对话框。
(3)在新的对话框中加入一个分组柜插件,设置分组框控件购标题为“请输入过滤查询条件”。
(4)在分组框内放入一个编辑框控件,专门用于编辑过滤查询的条件,新的对话框窗体如图1.37所示。
图1.37
新对话框布局
作为一个新的对话框,它在工程中是不可识别的,必须为它定义—个新的类并作一个类的声明,这样在工程的代码中才可以加以调用。
(5)在打开新的对话柜的情况下,单击鼠标右键,出现一个快捷菜单。
(6)在快捷菜单小单市“创建新类”选项,出现图1.38所示对话框。
该信息提示创建的对话框是一个新的资源,用户必须为它创建一个新的类,当然也可以选择一个存在的类。
(7)选择创建新类并单击OK按钮,出现为类命名的窗口,在窗口中键入名称为:
CDlgQuery。
(8)单击OK按钮,即完成新的对话框的新类的创建,回到创建类的对话框。
图1.38
创建新类提示
(9)将选项卡切换到MemberVariable页面,可以发现,该类中存在三个成员,一个是在新的对话框中加入的编辑框控件IDC_EDIT1;
另外两个就是新的对话框中自动创建的两个命令按钮,即OK按钮和Cancel按钮。
我们需要为它们增加成员变量,但由于OK按钮和Cancel按钮是自动创建的,可以被识别,因此我们仅为编辑框控件增加成员变量,其成员变量为:
m_query。
1.6.3
编制命令按钮的过程代码
在可视化编程中,往往一些行为的执行需要用户编制过程代码(向导和自动创建的过程除外),因此我们需要为一些新的成员在执行一定的行为动作时编制相应的过程代码。
1.“增加记录”命令按钮的过程代码
2.“删除记录”命令按钮的过程代码
3.“筛选记录”命令按钮的过程代码
筛选和查询均是对于给定条件记录的筛选或查询,就是在记录集中查找用户所需要的信息。
这里,我们仅编制一个用于按职工编号进行筛选查询的过程代码(用户在有一定的开发经历之后,可以制作一个所谓的万能的查询功能),其代码如下:
4.“排序记录”命令按钮的过程代码
同样,在这里,我们仍然按职工的编号进行记录的排序。
其过程代码如下:
本案例通过一个“人事管理系统”的制作开发,介绍了用VC++制作数据库应用程序的一个基本过程。
在该过程中,我们介绍了创建数据库与数据表的方法,并介绍了制作数据库应用系统的基本方法。
它涉及到了运用VC++编程的许多方面,想必大家已经对使用VC++有了一个大致的认识。