根据自定义用户二修改用户(UsrName)为姓名-身份证(UserNameCard),代码事件如下:
'自定义用户系统,"更改用户"窗口AfterLoad事件。
Dim UserNameCard As String
Dim UserGroup As String
Dim UserRoles As String
Dim PassWord As String
Dim dr As DataRow
If Forms("用户管理").Opened Then '正常打开
UserNameCard = Forms("用户管理").Controls("ListBox1").SelectedItem
Else
UserNameCard = _UserNameCard '_UserNameCard为全局变量,用于保存当前用户名
e.Form.Controls("UserNameCard").Enabled = False
e.Form.Controls("UserGroup").Enabled = False
e.Form.Controls("UserRoles").Enabled = False
End If
e.Form.Text = e.Form.Text & "-" & UserNameCard
dr = _UserTable.SQLFind("[姓名身份证] = '" & UserNameCard & "'")
If dr IsNot Nothing Then
e.Form.Controls("UserNameCard").Value = UserNameCard
e.Form.Controls("UserGroup").Value = dr("Group")
e.Form.Controls("UserRoles").Value = dr("Role")
e.Form.Controls("PassWord").Value = DecryptText(dr("PassWord"),"wjh","jyj")
Else
MessageBox.Show("用户不存在或者已经被删除!","提示",MessageBoxButtons.OK)
e.Form.Close()
End If
'自定义用户系统,"更改用户"窗口的确定按钮Click事件。
Dim UserNameCard As String = e.Form.Controls("UserNameCard").Value
Dim UserGroup As String = e.Form.Controls("UserGroup").Value
Dim UserRoles As String = e.Form.Controls("UserRoles").Value
Dim PassWord As String = e.Form.Controls("PassWord").Value
Dim OldUserNameCard As String
Dim Parts() As String = e.Form.Text.Split("-"c)
OldUserNameCard = Parts(Parts.Length -1)
If UserNameCard = "" OrElse UserGroup = "" Then
Messagebox.show("请输入用户名和用户分组!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
Return
End If
Dim dr As DataRow = _UserTable.SQLFind("[姓名身份证]= '" & OldUserNameCard & "'")
If dr IsNot Nothing Then
dr("姓名身份证") = UserNameCard
dr("Group") = UserGroup
dr("Role") = UserRoles
dr("Password") = EncryptText(PassWord,"wjh","jyj")
dr.Save()
If Forms("用户管理").Opened Then
With Forms("用户管理").Controls("ListBox1")
.Items(.SelectedIndex) = UserNameCard
End With
End If
e.Form.Close
Else
Messagebox.show("更改用户失败!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
End If
运行结果:修改用户信息后,点击“确定”按钮,提示"更改用户失败!",请帮修改一下代码,谢谢!
[此贴子已经被作者于2018/8/22 17:28:33编辑过]