企业人事管理系统vb毕业论文(8)

2019-05-17 15:55

需要修改的记录而不需要复杂的输入。当点击Datagrid表格中的任意记录时,各个TextBox需要显示该记录的对应信息,可以使用Datagrid的RowColChang事件完成次功能:

Private Sub dgUser_RowColChange(LastRow As Variant, ByVal LastCol As Integer)

If result <> 0 Then

txtUser.Text = dgUser.Columns(0).Text txtPassword.Text = dgUser.Columns(1).Text cboUser.Text = dgUser.Columns(2).Text End If End Sub

8)viewDataUser函数:将信息数据在Datagrid表格中显示。 处理流程:生成SQL语句(检索用户信息表中的全部数据),调用viewData函数。

Private Sub viewDataUser() '检索所有的用户信息 txtSQL = \UserId as 用户名,UserPassword as 用户密码,UserKind as 用户类型 \

txtSQL = txtSQL + \result = viewData(txtSQL, dgUser) End Sub

9)当TextBox内容改变时将TextBox背景色恢复为白色代码(如表5-7所示)

表5-7 恢复TextBox背景色代码设计 TextBox控件 txtPassword txtUser

事件 Chang Chang 代码 txtPassword.BackColor=WHITE txtUser.BackColor=WHITE 10)“退出”按钮:卸载窗体,语法为Unload ME。 2.修改密码子模块

(1)修改密码子模块的IPO图。 输入:原密码、新密码和确认密码 处理流程:

1)修改密码窗体启动,输入原密码、新密码和确认密码。

2)从用户信息表(tbUser)检查该用户的原密码是否与输入的原密码相同。 3)如果不同则进行信息提示,处理中止。

4)如果相同,检验新密码是否为空,如果为空则尽心信息提示,处理终止。 5)如果新密码非空,检验输入的确认密码和新密码是否相同。 6)如果不同则进行信息提示,处理终止。

7)更新用户信息(tbUser)中的用户密码字段。 输出::对用用户信息表(tbUser)的密码字段进行修改。 (2)修改密码子模块的窗体设计 (见图5-8)

33

图5-4 修改密码子模块窗体效果图

(3)窗体和控件特殊属性设计(见表5-8)

表5-8 窗体和控件特殊属性 控件名称 frmPassword

控件属性 类型 设置 登录对话框 (4)程序设计如下:

1)窗体公共变量定义(见表5-9)

表5-9 窗体公共变量定义 变量名称 txtSQL rstPass results 变量类型 String ADODB.Rexordset Boolean 说明 更新操作SQL语句 用户信息数据集 ExecuteSQL函数返回值 2)“确定”按钮:更新用户密码。 处理流程:

? 以用户名为关键字,检索用户信息表中与用户名对应的密码字段(用户名已

在登录成功时被赋给Public变量gUserName)。

? 将输入的原密码与检索到的密码相比较:如果不相等,提示用户“原密码不

正确!”,设置原密码TextBox获得焦点,背景色为蓝色,处理终止。

? 如果相等,检验新密码TextBox不能为空且值不能超过用户信息表的用户密

码字段的允许长度,否则提示用户相应信息,设置新密码TextBox获得焦点,背景色为蓝色,处理终止。

? 调用公共函数txtNull检验确认密码TextBox不能为空,否则提示用户相应

的信息,处理终止。

? 更新用户表中的用户密码字段。 Private Sub cmdOK_Click()

Dim strPass As String '检索该用户输入的原密码是否正确

txtSQL = \\

results = ExecuteSQL(txtSQL, rstPass, False) strPass = rstPass.Fields(0)

If StrComp(Trim(strPass), Trim(txtOldPass.Text)) <> 0 Then MsgBox \原密码不正确!\警告\ Me.txtOldPass.SetFocus

34

txtOldPass.BackColor = BLUE Exit Sub Else

'检验新密码不能为空

If txtIsNull(txtNewPass) Then MsgBox \请输入新密码,密码不能为空!\vbOKOnly + vbExclamation, \警告\

Exit Sub Else

If IsOverStringLen(txtNewPass.Text, 8) Then

MsgBox \密码不能超过8位!\警告\

txtNewPass.SetFocus

txtNewPass.BackColor = BLUE Exit Sub End If End If

'密码必须确认

If txtIsNull(txtPasswordSure) Then

MsgBox \请确认新密码!\警告\ Exit Sub End If

'检验两次输入的新密码是否

If StrComp(Trim(txtPasswordSure.Text), Trim(txtNewPass.Text)) <> 0 Then

MsgBox \两次输入密码不一致!\警告\

txtPasswordSure.SetFocus

txtPasswordSure.BackColor = BLUE Exit Sub End If

'更新数据库 txtSQL = \tbUser set UserPassword = '\+ Trim(txtNewPass.Text) txtSQL = txtSQL + \ results = ExecuteSQL(txtSQL, rstPass, True)

MsgBox \密码修改成功!\警告\ Unload Me End If End Sub

2)当TextBox内容改变时将TextBox背景色恢复为白色 3)“取消”按钮:卸载本窗体,语法为Unload ME

35

5.5基础数据管理模块

1. 基础数据管理模块IPO图

输入:职务、民族或者文化程度的编号和名称。 处理流程:

(1)当用户类型为系统管理员时该彩单可用。 (2)基础数据管理窗体启动。 (3)从职务编码信息表(tbDuty)中读取全部记录,显示在表格控件dgBasicData中。

(4)当鼠标单击标签,标签改变时,从相应的数据库表中读取全部记录,显示在表格中。

(5)根据系统管理员的选择(添加、修改和删除)进行相应处理,具体步骤(6)~(8)。

(6)添加操作:

? 输入编号和名称

以编号为关键字,检索与标签对应的职务(tbDuty)或民族(tbNation)或文化程度(tbEdu)编码信息表中是否存在该记录。

? 如果记录已经存在则进行错误信息提示,添加处理终止

? 如果记录不存在,根据数据库中对应字段的定义,检验输入值是否合法,如

果输入有错误 则进行错误信息提示,添加处理终止。

? 如果输入正确,执行SQL语句,向标签对应的数据库中插入记录 ? 提示用户添加成功,刷新窗体表格中的数据 (7)修改操作:

? 通过以下两种方式或得修改记录:手动输入或者在表格单击任意单元格,窗

体的文本框中自动显示被点击记录的编号和名称。

? 以编号为关键字,检验与标签对用的职务(tbDuty)或民族(tbNation)或

文化程度(tbEdu)编码信息表中是否存在该记录。 ? 如果记录不存在则进行错误信息提示,处理终止。

? 如果记录存在,根据数据库中对应字段的定义,检验输入值是否合法,如果

输入有错误,则进行错误信息提示,修改处理终止。

? 如果输入正确,执行SQL语句,更新与标签对应的数据库表。 ? 提示用户修改成功信息,刷新截面表格中的数据。 (8)删除操作

? 通过以下两种方式或得修改记录:手动输入或者在表格单击任意单元格,窗

体的文本框中自动显示被点击记录的编号和名称。

? 以编号为关键字,检验与标签对用的职务(tbDuty)或民族(tbNation)或

文化程度(tbEdu)编码信息表中是否存在该记录。 ? 如果记录不存在则进行错误信息提示,处理终止。

? 如果记录存在,检验职员基本信息表中是否存在该编码。

? 如果存在该编码,为保证数据完整性,不予删除,并提示错误信息;否则根

据当前标签,更新对应的职务(tbDuty)或民族(tbNation)或文化程度(tbEdu)编码信息表。

36

? 提示用户删除成功信息,刷新截面表格中的数据, 输出:据选择的标签分别对职务bDuty)或民族(tbNation)或文化程度(tbEdu)编码信息表进行更新。

2. 基础数据管理模块的窗体设计(如图5-5所示)

图5-5 基础数据管理模块的窗体效果

3. 程序设计

(1) 窗体加载。

处理流程:置中窗体;设置编号和名称标签显示职务信息;调用viewData函数使表格中显示职务信息表全部数据。 Private Sub Form_Load() '置中窗体

Me.Move (Screen.Width - Me.Width) / 2, (Screen.Height - Me.Height) / 2

lblId.Caption = \职务编号\ lblName.Caption = \职务名称\

'窗体第一次加载,表格中显示职务信息 txtSQL = \DutyId as 职务编号,DutyName as 职务名称 from tbDuty order by DutyId\

result = viewData(txtSQL, dgBasicData) End Sub

(2) 删除记录,关键字取决于* *编号TextBox。 处理流程:

1)输入值的合法性检验:调用公共函数txtIsNull检验编号文本框不能为空,否则处理终止。

37


企业人事管理系统vb毕业论文(8).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:华为测试与练习

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: