Foxtable(狐表)用户栏目专家坐堂 → [求助] 表事件的代码如何转换为窗口代码


  共有2311人关注过本帖树形打印复制链接

主题:[求助] 表事件的代码如何转换为窗口代码

帅哥哟,离线,有人找我吗?
hanzhang98
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:493 积分:3637 威望:0 精华:0 注册:2018/6/8 21:14:00
[求助] 表事件的代码如何转换为窗口代码  发帖心情 Post By:2018/6/21 17:43:00 [只看该作者]

从论坛下载了个“权限管理-小例”的示例,里面有给“用户表”-用户“密码”加密的功能(也就是打开表时,密码列的字符是“zgv9FQWbaNZ2iIhNej0+jA==”这样的),但这个功能和代码是在表事件里面,代码如下:

表事件

 

权限_PrepareEdit

 

Select Case e.Col.Name

    Case "表名"

        e.Col.ComboList = DataTables("表列").GetComboListString("表名")

    Case "列名"

        e.Col.ComboList = DataTables("表列").GetComboListString("列名", "表名 = '" & e.Row("表名") & "'")

End Select

 

用户_CellButtonClick

 

Select Case e.Col.Name

    Case "密码"

        e.Cancel = True

        Dim result As DialogResult

        result = MessageBox.Show("你希望重置该用户的密码吗?", "重置密码", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2)

        If result = DialogResult.Yes Then

            Dim pwd As String = MD5Encrypt("123456")   '初始密码123456

            e.Row(e.Col.Name) = pwd

        End If

End Select

 

用户_DataColChanging

 

Select Case e.DataCol.Name

    Case "密码"

        If e.NewValue = "" OrElse e.NewValue = MD5Encrypt("123456") Then

            e.NewValue = MD5Encrypt("123456")

        Else

            e.NewValue = MD5Encrypt(e.NewValue)

        End If

End Select


如何能让上述在表里面“给用户密码加密的代码”在“增加用户”和“更改用户”窗口里使用。也就是说在“增加用户”和“更改用户”窗口给用户的密码也能加密并写入表中。谢谢!

 

[此贴子已经被作者于2018/6/21 17:46:26编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/6/21 17:45:00 [只看该作者]

你增加用户、更改用户的代码怎么写的?贴出来看看。


 回到顶部
帅哥哟,离线,有人找我吗?
hanzhang98
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:493 积分:3637 威望:0 精华:0 注册:2018/6/8 21:14:00
  发帖心情 Post By:2018/6/21 18:20:00 [只看该作者]

完全按2018版使用帮助“自定义用户与权限管理之一”:写的,代码上不去,说是字符数超限。谢谢版主。



 


[此贴子已经被作者于2018/6/21 18:25:26编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/6/21 18:25:00 [只看该作者]

增加用户代码这样写的

 

cmd.CommandText = "Insert Into {Users} ([Name],[Group],[Password]) Values ('"
cmd.CommandText = cmd.CommandText & UserName & "','" & UserGroup & "','" & Password & "')"

 

那就需要改成

 

cmd.CommandText = "Insert Into {Users} ([Name],[Group],[Password]) Values ('"
cmd.CommandText = cmd.CommandText & UserName & "','" & UserGroup & "','" & MD5Encrypt(Password) & "')"


 回到顶部
帅哥哟,离线,有人找我吗?
hanzhang98
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:493 积分:3637 威望:0 精华:0 注册:2018/6/8 21:14:00
  发帖心情 Post By:2018/6/21 18:37:00 [只看该作者]

再麻烦请教版主一个问题,就是按2018版使用帮助“自定义用户与权限管理之一”的用户管理窗口的列表框如何能显示出两列内容来,即显示“用户编码、用户名称”两列并按用户编码排序。代码如下:(还是上不去代码)



另外,如何将列表框选定的用户在“用户编码、用户姓名、用户密码”等文本框显示出“用户”表的列内容。谢谢版主。


 回到顶部
帅哥哟,离线,有人找我吗?
hanzhang98
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:493 积分:3637 威望:0 精华:0 注册:2018/6/8 21:14:00
  发帖心情 Post By:2018/6/21 18:42:00 [只看该作者]

再请教版主:“增加用户”和“更改用户”窗口给用户的密码加密并写入表中后,在登录窗口输入的密码是不是也得用加密方法验证,登录窗口的加密验证代码又如何写。谢谢!

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/6/21 20:46:00 [只看该作者]

以下是引用hanzhang98在2018/6/21 18:37:00的发言:
再麻烦请教版主一个问题,就是按2018版使用帮助“自定义用户与权限管理之一”的用户管理窗口的列表框如何能显示出两列内容来,即显示“用户编码、用户名称”两列并按用户编码排序。代码如下:(还是上不去代码)



另外,如何将列表框选定的用户在“用户编码、用户姓名、用户密码”等文本框显示出“用户”表的列内容。谢谢版主。

 

afterLoad事件

 

cmd.CommandText = "SELECT DISTINCT Name From {Users}"

 

改成,细节自己调整

 

cmd.CommandText = "SELECT DISTINCT 用户编码+Name as name From {Users}"

 


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/6/21 20:47:00 [只看该作者]

以下是引用hanzhang98在2018/6/21 18:42:00的发言:
再请教版主:“增加用户”和“更改用户”窗口给用户的密码加密并写入表中后,在登录窗口输入的密码是不是也得用加密方法验证,登录窗口的加密验证代码又如何写。谢谢!

 

If e.Form.Controls("PassWord").Value = dr("Password") Then

 

改成,请灵活变通

 

If e.Form.Controls("PassWord").Value = MD5Encrypt(dr("Password")) Then


 回到顶部
帅哥哟,离线,有人找我吗?
hanzhang98
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:493 积分:3637 威望:0 精华:0 注册:2018/6/8 21:14:00
  发帖心情 Post By:2018/6/22 17:16:00 [只看该作者]

甜版主、老师好。如下代码能实现列表框双列显示,但须老师修正。(发不上代码来,说是参数错误,只好发个图片,望老师见谅)


图片点击可在新窗口打开查看此主题相关图片如下:2018-06-22 17.02.36.jpg
图片点击可在新窗口打开查看

[此贴子已经被作者于2018/6/22 17:16:27编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/6/22 17:41:00 [只看该作者]

改成

 

lst.Items.add(dr("用户编码") & "    " & dr("用户姓名"))


 回到顶部
总数 12 1 2 下一页