兼职中介管理系统论文
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
兼职中介管理系统
【摘要】随着市场经济不断活跃,中介在帮助供需双方进行更好的信息交流方面作用越来越多。
目前,随着单位职工人员流动量的不断增加,越来越多的应聘者和招聘者需要沟通,其中中介的作用是不可忽视的。
本系统是专门为大学生寻找兼职而开发的中介管理系统,其中包括找家教、网页制作兼职、软件开发兼职、硬件设计兼职等,从而对供需双方进行交流提供非常有效的服务。
每一部分都包括招聘者信息和求职者信息以及招聘信息和求职信息的查询功能。
本系统以中文版Visual Basic 6.0为前台开发工具,用中文版Access 2000作为后台数据库。
Visual Basic 6.0,它是由美国微软公司推出的小型数据库开发语言,由于其使用方便,硬件要求不高,易学等特点,它还提供强有力的应用程序开发工具,为将来的维护提供必要的基础。
系统的操作对人员的素质的要求不高,只需对他们稍加培训便能胜任。
【关键字】中介,数据库,VB6.0
目录
摘要 (1)
1、第一章系统设计与分析 (3)
1.1可行性研究 (3)
1.2系统功能分析研究 (4)
1.3系统功能设计 (6)
2、第二章数据库设计 (8)
3、第三章主窗体设计 (17)
4、第四章家教求职管理模块设计 (30)
5、第五章学生信息管理模块设计 (37)
6、第六章数据报表功能设计 (43)
7、第七章系统测试 (48)
8、第八章结论与体会 (54)
9、参考文献 (55)
兼职中介管理系统的开发与实现
第一章系统设计与分析
1.1可行性研究
计算机管理的意义:
在各大企事业单位中,用计算机管理信息已经越来越普遍了。
用计算机不但可以提高工作效率,而且还节省了许多人力物力,增强了资料的安全性。
提高了管理能力,为此,用计算机来管理信息,是非常必要的。
我作为一个计算机信息管理专业的大学生,希望能有所贡献。
用我五年的所学编制了一个实用的兼职中介管理系统。
可行性研究:
目的:可行性研究的目的是用最小的代价在尽可能的时间内确定问题是否能够解决。
经济上可行性:
现在,计算机的价格已经十分低廉,性能却有了长足的进步。
而本系统的开发,为中介管理人员工作效率带来了一个质的飞跃,为此主要表现有以下几个方面:
第一,本系统的运行可以代替人工进行许多繁杂的劳动;
第二,本系统的运行可以节省许多资源;
第三,本系统的运行可以大大的提高中介工作人员的工作效率;
第四,本系统可以使敏感文档更加安全,等等。
所以,本系统在经济上是可行的。
技术上可行性:
为本系统的开发我特地对**市九鼎中介和**市诚信中介进行了深入的调查研究。
本系统的开发具有一定的实用价值。
运行上可行性:
本系统作为一个小型的中介管理系统,所耗费的资源非常的小,单位内部的电脑无论是硬件还是软件都能够满足条件,因此,本系统在运行上是可行的。
法律可行性:
本系统为本人毕业设计,在开发过程中没有涉及合同、责任等与法律相抵触的方面。
因此,本系统在法律上是可行的。
1.2系统功能分析
通过对用户需求的具体调研和分析,确定本系统应具备的功能包括家教信息管理、网页制作信息管理、软件开发信息管理、系统信息管理等,具体主要包括如下功能模块:
1、系统主窗体
运行本系统程序,首先出现登录界面,输入正确的用户名和密码后进入主窗体。
这个系统只用到了一个窗体,在这个窗体中完成所有的管理和查询功能。
其中所有的管理功能都分布在不同的模块内。
系统主窗体主要由菜单栏、工具栏和主界面组成。
其中菜单栏包括“业务”和“系统”两个菜单。
工具栏上有10个按钮,分别是“增加”、“修改”、“删除”、“确定”、“取消”、“打印”、“上一条”、
“下一条”、“第一条”、“最后一条”。
单击这10个按钮分别对应相应的功能。
2、家教信息管理模块
在系统主窗体左侧的列表中,单击“家教求职”节点,选择“教师信息管理”分支节点,此时打开教师信息管理模块。
这一模块左侧部分为当前教师信息,右侧部分为数据库中还没有找到教师的学生信息,如果选择某条学生信息,然后单击“《==”按钮,即可将此学生与教师信息搭配,从而完成一对信息的组合。
选择“教师信息查询”分支节点,此时打开教师信息查询模块。
3、家长求教信息管理模块
在系统主窗体左侧的列表中,单击“家长求教”节点,选择“学生信息管理”分支节点,此时打开学生信息管理模块。
这一模块左侧部分为当前学生信息,右侧部分为数据库中还没有找到学生的教师信息,如果选择某条教师信息,然后单击“〈〈==”按钮,即可将此学生与教师信息搭配,从而完成一对信息的组合。
选择“学生信息查询”分支节点,此时打开学生信息查询模块。
4、网页制作信息管理模块
在系统主窗体左侧的列表中,单击“网页制作”节点,选择“招聘信息管理”分支节点,此时打开网页制作招聘信息管理模块。
这一模块左侧部分为当前招聘信息,右侧部分为数据库中还没有找到工作的学生信息,如果选择某条学生信息,然后单击“〈〈==”按钮,即可将此学生与招聘信息搭配,从而完成一对信息的组合。
选择“招聘信息查询”分支节点,此时打开招聘信息查询模块。
5、网页制作信息管理模块
在系统主窗体左侧的列表中,单击“网页制作”节点,选择“求职信息管理”分支节点,此时打开网页制作求职信息管理模块。
这一模块左侧部分为当前学生求职信息,右侧部分为数据库中还没有找到学生的招聘信息,如果选择某条招聘信息,然后单击“〈〈==”按钮,即可将此学生与招聘信息搭配,从而完成一对信息的组合。
选择“求职信息查询”分支节点,此时打开求职信息查询模块。
6、程序员信息管理模块
在系统主窗体左侧的列表中,单击“软件开发”节点,选择“程序员信息管理”分支节点,此时打开程序员求职信息管理模块。
选择“程序员信息查询”分支节点,此时打开程序员求职信息查询模块。
7、软件信息管理模块
在系统主窗体左侧的列表中,单击“软件开发”节点,选择“软件信息管理”分支节点,此时打开软件信息管理模块。
选择“软件信息查询”分支节点,此时打开软件信息查询模块。
1.3系统功能模块设计
通过对用户需求的具体调研和分析,确定本系统应具备的功能包括家教信息管理、网页制作信息管理、软件开发信息管理、系统信息
管理,系统具体的模块组织结构如图1所示。
图1 系统总体功能设计
第二章数据库设计
数据库在一个管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。
合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。
设计数据库系统时应该首先充分了解用户各个方面的需求,包括现有的以及将来可能增加的需求。
对于数据库应用程序来说,数据库的设计与创建是进行程序设计的基石,对于Visual Foxpro来说,其数据库的创建一般要包括数据库的设计和数据库的创建两个步骤。
2.1设计数据库
通过前面的分析可知,本系统的数据库应当包括如下的几部分:
●教师信息表用来保存找家教兼职的学生信息,即“教师”
信息;
●学生信息表用来保存家教信息;
●网页招聘表用来保存公司希望寻找能够参与网页制作工
作的兼职人员;
●网页求职表用来保存希望从事网页制作方向兼职的学生
的信息;
●软件信息表用来保存公司希望寻找能够参与软件开发工
作的兼职人员;
●软件求职表用来保存希望从事软件开发方向兼职的学生的
信息;
系统信息表用来保存用户名和密码以及访问权限等信息。
1、教师信息表
教师信息表包括教师编号、教师姓名、性别、年龄、籍贯、学校、专业、年级、职务、高考成绩、特长、爱好、联系电话、身份证号码、通信地址、当前状态、受理人、受理费用、学生编号、出生日期、登记日期等字段。
各个字段的属性设置如表1所示。
表1 教师信息表
2、学生信息表
学生信息表应包含学生编号、学生姓名、性别、年龄、学校、年级、平时成绩、学习状况、希望辅导科目、预期目标、家庭住址、联系电话、愿付报酬、联系人、身份证号码、状态、教师编号、受理人、收费、受理日期等字段。
各字段的属性设置如表2所示。
表2 学生信息表
3、网页招聘表
网页招聘表包括收件号、公司名称、网站类型、主要工作、工作地点、工作时间、报酬、招聘对象、需要的技术、完成时间、联系人、联系电话、身份证号码、备注、受理人、受理费用、状态、学生收件号、登记日期等字段,字段属性设置如表3所示。
表3 网页招聘表
4、网页求职表
网页求职表包括收件号、学生姓名、性别、年龄、籍贯、学校、专业、年级、职务、特长、爱好、联系电话、身份证号码、通信地址、当前状态、受理人、受理费用、项目收件号、登记日期等字段。
字段属性设置如表4所示。
表4 网页求职表
5、软件信息表
软件信息表包括收件号、公司名称、软件类型、主要工作、工作地点、工作时间、报酬、招聘对象、需要的技术、完成时间、联系人、联系电话、身份证号码、备注、受理人、受理费用、状态、学生收件号、登记日期等字段。
字段属性设置如表5所示。
6、软件求职表
软件求职表包括收件号、学生姓名、性别、年龄、籍贯、学校、专业、年级、职务、语言特长、爱好、曾有作品、联系电话、身份证号码、通信地址、当前状态、受理人、受费费用、项目收件号、登记日期等字段。
字段属性设置如表6所示。
表6 软件求职表
7、系统信息表
对于系统信息表,字段名称为用户名、密码、权限。
具体字段设置如表7所示。
表7 系统信息表
第三章主窗体设计
3.1界面设计
打开V isual Basic6.0,系统将自动建立一个Form窗体,然后使用菜单编辑系统主菜单,如图2所示。
菜单的C aption和Name属性如表8所示。
表8 菜单属性设置
窗体中添加一个Picture控件,并选择一幅图片作为此窗体的背景图片。
设计中的系统左边为一树型目录,单击某一管理或查询模块,则在右侧主要部分显示相应模块的内容,因此,所有的控件都要添加到这个主窗体。
添加TreeView控件,放置到窗体的左侧。
添加该控件的步骤如下:
(1)依次选择“工程”“部件”菜单,打开“部件”对话框如图3所示。
图3 部件对话框
(2)在“控件”选项卡中的列表内选中“Microsoft Windows Common Controls6.0(SP4)复选框,单击“确定”按钮,在工具箱内出现TreeView控件的图标。
(3)单击TreeView控件图标,按住鼠标左键不放并将其施放到合适的位置即可。
此时,TreeView控件添加完毕。
再添加一个Picture控件,这个控件将是所有管理和查询模块的基础。
以后所有的管理模块都位于一组Picture控件数组上。
Picture 数组含有12个元素,如果要创建该数组就应包含12个管理及查询模块。
单击Picture控件,然后复制,单击Picture控件外的任何地方,粘贴刚才复制的Picture控件,这时会提示是否要建立控件数组,单击“是”按钮。
用同样的方法,粘贴11个Picture控件,这时就构
成了一个含有12个元素的Picture控件数组。
所有Picture控件的具体设置,如位置,是否可见等,都将在代码中进行。
在每一个Picture控件中添加相应的Label控件和Text控件。
如在教师信息管理模块中需要用到的Picture2(0)控件上,添加含有18个元素的文本框控件、Label控件表格控件、按钮控件和一个Dtpicker 控件,按钮控件命名为cmdjiaoshi。
对于教师信息查询模块,添加OptionBox控件,按钮控件和表格控件,添加好控件的窗体如图4所示。
3.2添加模块
为工程添加一个模块,在该模块内定义这个全局变量。
Option Explicit
Public conn As New ADODB.Connection '标记连接对象
Public userID As String
Public username As String
3.3通用变量声明
首先在程序的通用变量声明部分定义几个本系统中需要用到的变量,包括与各个数据表相对应的数据访问对象,标记各个数据表状态的变量,标记选定表格内收件号码的变量等。
Option Explicit
Dim txttbl As String
Dim rs_jiaoshi As New ADODB.Recordset '教师数据对象
Dim rs_xuesheng As New ADODB.Recordset '学生数据对象
Dim rs_pagezhao As New ADODB.Recordset '网页制作招聘数据对象
Dim rs_pageqiu As New ADODB.Recordset '网页制作求职数据对象
Dim rs_ruanzhao As New ADODB.Recordset '软件开发招聘数据对象Dim rs_ruanqiu As New ADODB.Recordset '软件开发求职数据对象
Dim datanum As Integer '选定的编号
Dim state As String '标记状态
Dim numjiaoshi As String '当前选择的教师编号
Dim numstu As String '当前选择的学生编号
Dim numpagexue As String '当前选择的寻找网页制作工作的学生编号Dim numpagejob As String '当前选定的公司编号
Dim numruanxue As String '当前选择的寻找软件开发工作的学生编号Dim numruanjob As String '当前选定的公司编号
Dim jiaoshistate As Boolean
Dim xueshengstate As Boolean
Dim pagezhaostate As Boolean
Dim pageqiustate As Boolean
Dim ruanzhaostate As Boolean
Dim ruanqiustate As Boolean
Dim savestate As Integer '新建保存为1,修改保存为2,出租保存
为3,出售保存为4
Dim saveback As Boolean
3.4窗体加载
窗体加载的时候,首先设置各个P icture控件的位置,然后设置TreeView控件的节点,同时打开各个数据表。
首先设置Picture控件的位置和状态。
具体代码如下:
然后打开各个数据表。
在打开数据表之前应先检查该数据表是否已经打开,如果重复打开将会出现错误操作。
打开学生求职表之前,应检查变量jiaoshistate的值是否为False,如果为False表示未打开数据表,此时可以打开,并调用过程viewjiaoshibiao显示数据信息。
具体代码如下:
'学生求职管理部分的设置
If jiaoshistate = False Then
sql = "select * from 教师信息"
rs_jiaoshi.CursorLocation = adUseClient
rs_jiaoshi.Open sql, conn, adOpenKeyset, adLockPessimistic
rs_jiaoshi.MoveLast '显示最后一条记录
datanum = rs_jiaoshi.RecordCount
viewjiaoshibiao
jiaoshistate = True
End If
'学生找家教管理部分的设置
If xueshengstate = False Then
sql = "select * from 学生信息"
rs_xuesheng.CursorLocation = adUseClient
rs_xuesheng.Open sql, conn, adOpenKeyset, adLockPessimistic
rs_xuesheng.MoveLast '显示最后一条记录
datanum = rs_xuesheng.RecordCount
viewxueshengbiao
xueshengstate = True
End If
'网页招聘信息管理部分的设置
If pagezhaostate = False Then
sql = "select * from 网页招聘"
rs_pagezhao.CursorLocation = adUseClient
rs_pagezhao.Open sql, conn, adOpenKeyset, adLockPessimistic
rs_pagezhao.MoveLast '显示最后一条记录
datanum = rs_pagezhao.RecordCount
viewpagezhao
pagezhaostate = True
End If
'网页制作求职信息管理部分的设置
If pageqiustate = False Then
sql = "select * from 网页求职"
rs_pageqiu.CursorLocation = adUseClient rs_pageqiu.Open sql, conn, adOpenKeyset, adLockPessimistic
rs_pageqiu.MoveLast '显示最后一条记录
datanum = rs_pageqiu.RecordCount
viewpageqiu
pageqiustate = True
End If
'软件招聘信息管理部分的设置
If ruanzhaostate = False Then
sql = "select * from 软件招聘"
rs_ruanzhao.CursorLocation = adUseClient
rs_ruanzhao.Open sql, conn, adOpenKeyset, adLockPessimistic
rs_ruanzhao.MoveLast '显示最后一条记录
datanum = rs_ruanzhao.RecordCount
viewruanzhao
ruanzhaostate = True
End If
'软件求职信息管理部分的设置
If ruanqiustate = False Then
sql = "select * from 软件求职"
rs_ruanqiu.CursorLocation = adUseClient rs_ruanqiu.Open sql, conn, adOpenKeyset, adLockPessimistic
rs_ruanqiu.MoveLast '显示最后一条记录
datanum = rs_ruanqiu.RecordCount
viewruanqiu
ruanqiustate = True
End If
在代码中为TreeView控件添加节点信息。
Dim nodX As Node
Set nodX = TreeView1.Nodes.Add(, , , "家教求职")
Set nodX = TreeView1.Nodes.Add(1, tvwChild, , "教师信息管理") Set nodX = TreeView1.Nodes.Add(1, tvwChild, , "教师信息查询") Set nodX = TreeView1.Nodes.Add(, , , "家长求教")
Set nodX = TreeView1.Nodes.Add(4, tvwChild, , "学生信息管理") Set nodX = TreeView1.Nodes.Add(4, tvwChild, , "学生信息查询") Set nodX = TreeView1.Nodes.Add(, , , "网页制作")
Set nodX = TreeView1.Nodes.Add(7, tvwChild, , "招聘信息管理") Set nodX = TreeView1.Nodes.Add(7, tvwChild, , "招聘信息查询") Set nodX = TreeView1.Nodes.Add(7, tvwChild, , "求职信息管理")
Set nodX = TreeView1.Nodes.Add(7, tvwChild, , "求职信息查询")
Set nodX = TreeView1.Nodes.Add(, , , "软件开发")
Set nodX = TreeView1.Nodes.Add(12, tvwChild, , "程序员信息管理")
Set nodX = TreeView1.Nodes.Add(12, tvwChild, , "程序员信息查询")
Set nodX = TreeView1.Nodes.Add(12, tvwChild, , "软件信息管理")
Set nodX = TreeView1.Nodes.Add(12, tvwChild, , "软件信息查询")
Set nodX = TreeView1.Nodes.Add(, , , "系统设置")
Set nodX = TreeView1.Nodes.Add(17, tvwChild, , "更改口令")
End Sub
3.5实现T reeView控件功能
程序运行的过程中,单击Treeview控件将引发Treeview1_Click 事件,该控件将作出相应的反映。
根据当前单击的节点名称来执行相应的操作。
这一部分的代码设置如下:
Private Sub TreeView1_Click()
On Error GoTo clickerror
Dim i As Integer
Dim j As Integer
Dim sql As String
i = TreeView1.SelectedItem.Index
If TreeView1.SelectedItem.Children > 0 Then
txttbl = TreeView1.SelectedItem.Text
If TreeView1.SelectedItem.Expanded = True Then
TreeView1.SelectedItem.Expanded = False
Else
TreeView1.SelectedItem.Expanded = True
End If
End If
Select Case TreeView1.SelectedItem.Text
Case "教师信息管理"
Picture2(0).Visible = True
Picture2(1).Visible = False
Picture2(2).Visible = False
Picture2(3).Visible = False
Picture2(4).Visible = False
Picture2(5).Visible = False
Picture2(6).Visible = False
Picture2(7).Visible = False
Picture2(8).Visible = False
Picture2(9).Visible = False
Picture2(11).Visible = False
state = "教师信息管理"
Toolbar1.Enabled = True Case "教师信息查询"
Picture2(1).Visible = True
Picture2(0).Visible = False
Picture2(2).Visible = False
Picture2(3).Visible = False
Picture2(4).Visible = False
Picture2(5).Visible = False
Picture2(6).Visible = False
Picture2(7).Visible = False
Picture2(8).Visible = False
Picture2(9).Visible = False
Picture2(11).Visible = False
Picture2(10).Visible = False
state = "教师信息查询"
Toolbar1.Enabled = False Case "学生信息管理"
Picture2(2).Visible = True
Picture2(0).Visible = False
Picture2(1).Visible = False
Picture2(3).Visible = False
Picture2(4).Visible = False
Picture2(5).Visible = False
Picture2(6).Visible = False
Picture2(7).Visible = False
Picture2(8).Visible = False
Picture2(9).Visible = False
Picture2(11).Visible = False
Picture2(10).Visible = False
state = "学生信息管理"
Toolbar1.Enabled = True Case "学生信息查询"
Picture2(2).Visible = False
Picture2(0).Visible = False
Picture2(1).Visible = False
Picture2(3).Visible = True
Picture2(4).Visible = False
Picture2(5).Visible = False
Picture2(6).Visible = False
Picture2(7).Visible = False
Picture2(8).Visible = False
Picture2(9).Visible = False
Picture2(10).Visible = False
state = "学生信息查询"
Toolbar1.Enabled = False Case "招聘信息管理"
Picture2(2).Visible = False
Picture2(0).Visible = False
Picture2(1).Visible = False
Picture2(3).Visible = False
Picture2(5).Visible = False
Picture2(6).Visible = False
Picture2(7).Visible = False
Picture2(8).Visible = False
Picture2(9).Visible = False
Picture2(11).Visible = False
Picture2(10).Visible = False
Picture2(4).Visible = True
state = "招聘信息管理"
Toolbar1.Enabled = True Case "招聘信息查询"
Picture2(2).Visible = False
Picture2(0).Visible = False
Picture2(1).Visible = False
Picture2(5).Visible = True
Picture2(4).Visible = False
Picture2(6).Visible = False
Picture2(3).Visible = False
Picture2(7).Visible = False
Picture2(8).Visible = False
Picture2(9).Visible = False
Picture2(11).Visible = False
Picture2(10).Visible = False
state = "招聘信息查询"
Toolbar1.Enabled = False Case "求职信息管理"
Picture2(6).Visible = True
Picture2(2).Visible = False
Picture2(0).Visible = False
Picture2(1).Visible = False
Picture2(3).Visible = False
Picture2(5).Visible = False
Picture2(7).Visible = False
Picture2(4).Visible = False
Picture2(8).Visible = False
Picture2(11).Visible = False
Picture2(10).Visible = False
state = "求职信息管理"
Toolbar1.Enabled = True Case "求职信息查询"
Picture2(2).Visible = False
Picture2(0).Visible = False
Picture2(1).Visible = False
Picture2(5).Visible = False
Picture2(4).Visible = False
Picture2(6).Visible = False
Picture2(3).Visible = False
Picture2(7).Visible = True
Picture2(8).Visible = False
Picture2(9).Visible = False
Picture2(11).Visible = False
Picture2(10).Visible = False
state = "求职信息查询"
Toolbar1.Enabled = False Case "程序员信息管理"
Picture2(2).Visible = False
Picture2(0).Visible = False
Picture2(1).Visible = False
Picture2(5).Visible = False
Picture2(4).Visible = False
Picture2(6).Visible = False
Picture2(3).Visible = False
Picture2(7).Visible = False
Picture2(8).Visible = False
Picture2(11).Visible = False
Picture2(10).Visible = False
Picture2(9).Visible = True
state = "程序员信息管理"
Toolbar1.Enabled = True Case "程序员信息查询"
Picture2(2).Visible = False
Picture2(0).Visible = False
Picture2(1).Visible = False
Picture2(5).Visible = False
Picture2(4).Visible = False
Picture2(6).Visible = False
Picture2(3).Visible = False
Picture2(7).Visible = False
Picture2(9).Visible = False
Picture2(11).Visible = False
Picture2(10).Visible = False
state = "程序员信息查询"
Toolbar1.Enabled = False Case "软件信息管理"
Picture2(2).Visible = False
Picture2(0).Visible = False
Picture2(1).Visible = False
Picture2(5).Visible = False
Picture2(4).Visible = False
Picture2(6).Visible = False
Picture2(3).Visible = False
Picture2(7).Visible = False
Picture2(8).Visible = False
Picture2(11).Visible = False
Picture2(9).Visible = False
Picture2(10).Visible = True
state = "软件信息管理"
Toolbar1.Enabled = True Case "软件信息查询"
Picture2(2).Visible = False
Picture2(0).Visible = False
Picture2(1).Visible = False
Picture2(5).Visible = False
Picture2(4).Visible = False
Picture2(6).Visible = False
Picture2(3).Visible = False
Picture2(7).Visible = False
Picture2(11).Visible = True
Picture2(9).Visible = False
Picture2(8).Visible = False
Picture2(10).Visible = False
state = "软件信息查询"
Toolbar1.Enabled = False Case "更改口令"
frmchangepwd.Show
End Select
Exit Sub
clickerror:
MsgBox Err.Description
End Sub
3.6实现工具栏的功能
由于主窗体用到了工具栏,因此需要对这个工具栏内的按钮响应进行设置。
PrivateSubToolbar1_ButtonClick(ByValButtonAs MSComctlLib.Button)
Select Case Button.Key '按关键字选择
Case"bt_new" '新建按钮
datanew
Button.Enabled = False
Toolbar1.Buttons(2).Enabled = False
Toolbar1.Buttons(3).Enabled = False
Toolbar1.Buttons(4).Enabled = True
Toolbar1.Buttons(5).Enabled = True
savestate = 1
Case"bt_modify" '修改按钮
Toolbar1.Buttons(1).Enabled = False
Toolbar1.Buttons(2).Enabled = False
Toolbar1.Buttons(3).Enabled = False
Toolbar1.Buttons(4).Enabled = True
Toolbar1.Buttons(5).Enabled = True
savestate = 2
modify
Case "bt_delete" '删除按钮
datadelete
Case bt_save" '保存按钮
datasave
If saveback = False Then
Button.Enabled = False
Toolbar1.Buttons(1).Enabled = True
Toolbar1.Buttons(2).Enabled = True
Toolbar1.Buttons(3).Enabled = True
Toolbar1.Buttons(5).Enabled = False
End If
Case "bt_cancel" '取消按钮
datacancel
Button.Enabled = False
Toolbar1.Buttons(1).Enabled = True
Toolbar1.Buttons(2).Enabled = True
Toolbar1.Buttons(3).Enabled = True
Toolbar1.Buttons(4).Enabled = False
Case "bt_print" '打印按钮
dataprint
Case "bt_first" '移动到第一条按钮
dataMoveFirst
Case "bt_previous" '移动到前一条按钮
dataMovePrevious
Case bt_next" '移动到下一条按钮
datamovenext
Case "bt_last" '移动到最后一条按钮
datamovelase
End Select
End Sub
第四章实现家教求职管理模块
4.1实现显示教师信息功能
根据上面的介绍,打开教师信息管理模块后,首先调用viewjiaoshibiao过程显示教师信息。
viewjiaoshibiao过程分为两个部分,一部分用来在文本框中显示每一条教师信息,另外一部分用来在表格中显示目前没有找到教师的学生信息。
具体的代码如下:
Public Sub viewjiaoshibiao()
Dim i As Integer
'显示教师信息
For i = 0 To 18
If Not IsNull(rs_jiaoshi.Fields(i)) Then
txtstuqiu(i).Text = rs_jiaoshi.Fields(i)
txtstuqiu(i).Enabled = False
Else
txtstuqiu(i).Text = ""
End If
Next i
If Not IsNull(rs_jiaoshi.Fields(19)) Then
DTPicker1.Value = rs_jiaoshi.Fields(19)
End If
If Not IsNull(rs_jiaoshi.Fields(20)) Then
DTPicker2.Value = rs_jiaoshi.Fields(20)
End If
'显示表格中的学生信息
Dim rs_stu As New ADODB.Recordset
Dim sql As String
sql = "select 学生编号,学生姓名,希望辅导科目from 学生信息where 状态
= '未找到教师'"
rs_stu.CursorLocation = adUseClient
rs_stu.Open sql, conn, adOpenKeyset, adLockPessimistic
With MSHFlexGrid1
.ScrollBars = flexScrollBarBoth
.FixedCols = 1
.Rows = rs_stu.RecordCount + 1
.Cols = 3
.SelectionMode = flexSelectionByRow
For i = 0 To .Rows - 1
.RowHeight(i) = 315
Next
For i = 0 To .Cols - 1
.ColWidth(i) = 1300
Next i
'下面设置表头
.Row = 0
.Col = 0
.Text = "学生编号"
.Col = 1
.Text = "学生姓名"
.Col = 2
.Text = "希望辅导科目"
If Not rs_stu.EOF Then
rs_stu.MoveFirst
End If
While Not rs_stu.EOF
.Row = .Row + 1
.Col = 0
.Text = rs_stu.Fields(0)
.Col = 1
.Text = rs_stu.Fields(1)
.Col = 2
.Text = rs_stu.Fields(2)
rs_stu.MoveNext
Wend
rs_stu.Close
End With
End Sub
4.2实现配置按钮功能
在教师信息管理模块中,如果在表格中选定某条尚未找到教师的学生,然后单击“<<==”按钮,即可将当前的教师信息和选定的学
生信息进行搭配。
如果当前教师已经找到学生,则给出显示。
具体的代码实现如下:
Private Sub cmdjiaoshi_Click() '为学生找教师
Toolbar1.Buttons(4).Enabled = True
Toolbar1.Buttons(5).Enabled = True
If numstu = "" Then
MsgBox "请选择学生编号!", vbOKOnly
Exit Sub
End If
If rs_jiaoshi.Fields(15) = "未找到学生" Then
txtstuqiu(18) = numstu
txtstuqiu(15) = "已找到学生"
txtstuqiu(16).Enabled = True
txtstuqiu(17).Enabled = True
MsgBox "要保存信息请单击【保存】按钮,放弃请单击【取消】按钮", vbOKOnly
End If
If rs_jiaoshi.Fields(15) = "已找到学生" Then
MsgBox "该教师已找到学生!", vbOKOnly
Exit Sub
End If
savestate = 3
End Sub
4.3实现教师信息查询功能
教师信息查询模块只有一个“查询”按钮需要填写代码。
当单击了“查询”按钮后,首先设定表格(包括表头、行宽、列高等),然后判断当臆的查询方式,一次检查几个Option控件的V alue属性是否为True,如果为True则表示选定了当前的查询方式,接着使用where 语句限定查询的条件。
首先设定表格显示的表头信息,具体的代码如下:
Private Sub cmdjiaoshifind_Click() '查找教师信息
Dim rs_jiaoshifind As New ADODB.Recordset
Dim sql As String
Dim i As Integer
With gridjiaoshifind '设置表格
.ScrollBars = flexScrollBarBoth
.FixedCols = 1
.Rows = 2
.Cols = 21
.SelectionMode = flexSelectionByRow For i = 0 To .Rows - 1
.RowHeight(i) = 315
Next
For i = 0 To .Cols - 1
.ColWidth(i) = 1300
Next i
'下面设置表头
.Row = 0
.Col = 0
.Text = "教师编号"
.Col = 1
.Text = "教师姓名"
.Col = 2
.Text = "性别"
.Col = 3
.Text = "年龄"
.Col = 4
.Text = "籍贯"
.Col = 5
.Text = "学校"
.Col = 6
.Text = "专业"
.Col = 7
.Text = "年级"
.Col = 8
.Text = "职务"
.Col = 9
.Text = "高考成绩"
.Col = 10
.Text = "特长"
.Col = 11
.Text = "爱好"
.Col = 12
.Text = "联系电话"
.Col = 13
.Text = "身份证号码"
.Col = 14
.Text = "通信地址"
.Col = 15
.Text = "当前状态"
.Col = 16
.Text = "受理人"
.Col = 17
.Text = "受理费用"
.Col = 18
.Text = "学生编号"
.Col = 19
.Text = "出生日期"
.Col = 20
.Text = "登记日期"
End With
'查询全部信息
If optjiaoshiall.Value = True Then
sql = "select * from 教师信息"
rs_jiaoshifind.CursorLocation = adUseClient
rs_jiaoshifind.Open sql, conn, adOpenKeyset, adLockPessimistic gridjiaoshifind.Row = 0
gridjiaoshifind.Rows = rs_jiaoshifind.RecordCount + 2
If Not rs_jiaoshifind.EOF Then '如果数据库非空
rs_jiaoshifind.MoveFirst
Do While Not rs_jiaoshifind.EOF
gridjiaoshifind.Row = gridjiaoshifind.Row + 1
For i = 0 To 20
gridjiaoshifind.Col = i
If Not IsNull(rs_jiaoshifind.Fields(i)) Then
gridjiaoshifind.Text = rs_jiaoshifind.Fields(i)
Else
gridjiaoshifind.Text = ""
End If
Next i
rs_jiaoshifind.MoveNext
Loop
rs_jiaoshifind.Close
End If
End If
'查询已找到学生的教师
If optjiaoshiyi.Value = True Then
sql = "select * from 教师信息where 当前状态= '已找到学生'"
rs_jiaoshifind.CursorLocation = adUseClient
rs_jiaoshifind.Open sql, conn, adOpenKeyset, adLockPessimistic gridjiaoshifind.Row = 0
gridjiaoshifind.Rows = rs_jiaoshifind.RecordCount + 2
If Not rs_jiaoshifind.EOF Then
rs_jiaoshifind.MoveFirst
Do While Not rs_jiaoshifind.EOF
gridjiaoshifind.Row = gridjiaoshifind.Row + 1
For i = 0 To 20
gridjiaoshifind.Col = i
If Not IsNull(rs_jiaoshifind.Fields(i)) Then
gridjiaoshifind.Text = rs_jiaoshifind.Fields(i)
Else
gridjiaoshifind.Text = ""
End If
Next i
rs_jiaoshifind.MoveNext
Loop
rs_jiaoshifind.Close
End If
End If
'查询未找到学生的教师
If optjiaoshiwei.Value = True Then
sql = "select * from 教师信息where 当前状态= '未找到学生'"
rs_jiaoshifind.CursorLocation = adUseClient
rs_jiaoshifind.Open sql, conn, adOpenKeyset, adLockPessimistic
gridjiaoshifind.Row = 0
gridjiaoshifind.Rows = rs_jiaoshifind.RecordCount + 2
If Not rs_jiaoshifind.EOF Then
rs_jiaoshifind.MoveFirst
Do While Not rs_jiaoshifind.EOF
gridjiaoshifind.Row = gridjiaoshifind.Row + 1
For i = 0 To 20
gridjiaoshifind.Col = i
If Not IsNull(rs_jiaoshifind.Fields(i)) Then
gridjiaoshifind.Text = rs_jiaoshifind.Fields(i)
Else
gridjiaoshifind.Text = ""
End If
Next i
rs_jiaoshifind.MoveNext
Loop
rs_jiaoshifind.Close
End If
End If
'按找学校查询教师信息
If optjiaoshischool.Value = True Then
sql = "select * from 教师信息where 学校= '" & txtschool.Text & "'"
rs_jiaoshifind.CursorLocation = adUseClient
rs_jiaoshifind.Open sql, conn, adOpenKeyset, adLockPessimistic
gridjiaoshifind.Row = 0
gridjiaoshifind.Rows = rs_jiaoshifind.RecordCount + 2
If Not rs_jiaoshifind.EOF Then
rs_jiaoshifind.MoveFirst
Do While Not rs_jiaoshifind.EOF
gridjiaoshifind.Row = gridjiaoshifind.Row + 1
For i = 0 To 20
gridjiaoshifind.Col = i
If Not IsNull(rs_jiaoshifind.Fields(i)) Then
gridjiaoshifind.Text = rs_jiaoshifind.Fields(i)
Else
gridjiaoshifind.Text = ""
End If
Next i
rs_jiaoshifind.MoveNext
Loop
rs_jiaoshifind.Close
End If
End If
'按照专业查询教师
If optjiaoshimajor.Value = True Then
sql = "select * from 教师信息where 专业= '" & txtmajor.Text & "'"
rs_jiaoshifind.CursorLocation = adUseClient
rs_jiaoshifind.Open sql, conn, adOpenKeyset, adLockPessimistic
gridjiaoshifind.Row = 0
gridjiaoshifind.Rows = rs_jiaoshifind.RecordCount + 2
If Not rs_jiaoshifind.EOF Then
rs_jiaoshifind.MoveFirst
Do While Not rs_jiaoshifind.EOF
gridjiaoshifind.Row = gridjiaoshifind.Row + 1
For i = 0 To 20
gridjiaoshifind.Col = i
If Not IsNull(rs_jiaoshifind.Fields(i)) Then
gridjiaoshifind.Text = rs_jiaoshifind.Fields(i)
Else
gridjiaoshifind.Text = ""
End If
Next i
rs_jiaoshifind.MoveNext
Loop
rs_jiaoshifind.Close
End If
End If
End Sub
第五章实现学生信息管理模块
5.1实现显示学生信息功能
打开学生信息管理模块后,首先调用viewxueshengbiao过程显示教师信息。
viewxueshengbiao过程分为两部分,一部分用来在文本框中显示每一条学生信息,另外一部分用来在表格中显示目前没有找到教师的学生信息。
'学生信息显示数据用
Public Sub viewxueshengbiao()
Dim i As Integer
For i = 0 To 18
If Not IsNull(rs_xuesheng.Fields(i)) Then
txtxuesheng(i).Text = rs_xuesheng.Fields(i)
txtxuesheng(i).Enabled = False
Else
txtxuesheng(i).Text = ""
End If
Next i
If Not IsNull(rs_xuesheng.Fields(19)) Then
DTPicker3.Value = rs_xuesheng.Fields(19)
End If
'显示表格中的学生信息
Dim rs_stu As New ADODB.Recordset
Dim sql As String
sql = "select 教师编号,教师姓名,专业from 教师信息where 当前状态= '未找到学生'"
rs_stu.CursorLocation = adUseClient
rs_stu.Open sql, conn, adOpenKeyset, adLockPessimistic
With MSHFlexGrid2
.ScrollBars = flexScrollBarBoth
.FixedCols = 1
.Rows = rs_stu.RecordCount + 1
.Cols = 3
.SelectionMode = flexSelectionByRow
For i = 0 To .Rows - 1
.RowHeight(i) = 315
Next
For i = 0 To .Cols - 1
.ColWidth(i) = 1300
Next i
'下面设置表头
.Row = 0
.Col = 0
.Text = "教师编号"
.Col = 1
.Text = "教师姓名"
.Col = 2
.Text = "专业"
If Not rs_stu.BOF Then
rs_stu.MoveFirst
End If
While Not rs_stu.EOF
.Row = .Row + 1
.Col = 0
If Not IsNull(rs_stu.Fields(0)) Then
.Text = rs_stu.Fields(0)
End If
.Col = 1
If Not IsNull(rs_stu.Fields(1)) Then
.Text = rs_stu.Fields(1)
End If
.Col = 2
If Not IsNull(rs_stu.Fields(2)) Then
.Text = rs_stu.Fields(2)
End If
rs_stu.MoveNext
Wend
rs_stu.Close
End With
End Sub
5.2实现配置按钮功能
在学生信息管理模块中,如果在表格中选定某条尚未找到学生的教师,然后单击“《==”按钮,即可将当前的学生信息和选定的教师信息进行搭配。
如果当前学生已经找到教师,则给出提示。
具体的
代码实现如下:
Private Sub cmdxuesheng_Click() '为学生找教师按钮
Toolbar1.Buttons(4).Enabled = True
Toolbar1.Buttons(5).Enabled = True
If numjiaoshi = "" Then
MsgBox "请选择教师编号!", vbOKOnly
Exit Sub
End If
If rs_xuesheng.Fields(15) = "未找到教师" Then
txtxuesheng(16) = numjiaoshi
txtxuesheng(15) = "已找到学生"
txtxuesheng(18).Enabled = True
MsgBox "要保存信息请单击【保存】按钮,放弃请单击【取消】按钮", vbOKOnly
End If
If rs_xuesheng.Fields(15) = "已找到教师" Then
MsgBox "该学生已找到教师!", vbOKOnly
Exit Sub
End If
savestate = 3
End Sub
5.3实现学生信息查询功能
学生信息查询模块只有一个“查询”按钮需要填写代码。
当单击“查询”按钮后,首先设定表格(包括表头、行宽、列高等),然后判断当前的查询方式,一次检查几个Option控件的V alue属性是否为true,如果为True则表示选定了当前的查询方式,接着使用where语句限定查询的条件。
首先设置表格的表头,具体的代码如下:
Private Sub cmdxueshengfind_Click() '查询学生信息
Dim rs_xueshengfind As New ADODB.Recordset
Dim sql As String
Dim i As Integer
With gridxueshengfind '设置表格
.ScrollBars = flexScrollBarBoth
.FixedCols = 1
.Rows = 2。