Foxtable(狐表)用户栏目专家坐堂 → [求助] 解锁行需要密码....


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

主题:[求助] 解锁行需要密码....

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


加好友 发短信
等级:幼狐 帖子:118 积分:1002 威望:0 精华:0 注册:2013/1/14 0:10:00
[求助] 解锁行需要密码....  发帖心情 Post By:2013/2/7 17:32:00 [只看该作者]

 菜单->数据表->表属性->事件->DataRowLockedChanging
static flag As Integer = 0
Dim t As Table = Tables(e.DataTable.Name)
If e.DataRow.locked Then
    If flag = 0 Then
        e.Cancel = True
        Dim pwd As String
        If InputPassWord(pwd,"提示","请输入密码:") Then
            If pwd = "123456" Then
                flag = 1
            End If
        End If
    Else If flag = 1 Then
        e.Cancel = True
    Else If flag = 2 Then
        
    End If
End If

If t.BottomPosition = t.FindRow(e.DataRow) Then
    If flag = 1 Then
        flag = 2
        For i As Integer = t.TopPosition To t.BottomPosition
            t.Rows(i).Locked = False
        Next
    End If
    flag = 0
End If

上述代码是想 锁定的行在解锁的时候需要输入密码,这样可以减少误操作。代码由lin_hailun提供,在此感谢!
但是代码经过本人测试出现如下问题,烦请各路大神优化一下,有更简短的更好;1、输入错的密码没有任何提示(如果有这样的提示:密码错误,请重试!效果感觉好点)。2、如果选中5行,点击解锁,出现密码框,若此时不想输入密码 就得在密码框上进行5次取消,或5次确定,或5次关闭按钮。但是实际上需要的只是一次取消即可!

[此贴子已经被作者于2013-2-7 17:35:56编辑过]

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2013/2/16 13:58:00 [只看该作者]

 这样应该就可以了。

static flag As Integer = 0
Dim t As Table = Tables(e.DataTable.Name)
If e.DataRow.locked Then
    If flag = 0 Then
        e.Cancel = True
        Dim pwd As String
        If InputPassWord(pwd,"提示","请输入密码:") Then
            If pwd = "123456" Then
                flag = 1
            End If
        Else
            flag = 2
        End If
    Else If flag = 1 Then
        e.Cancel = True
    Else If flag = 2 Then
        e.Cancel = True
    End If
End If

If t.BottomPosition = t.FindRow(e.DataRow) Then
    If flag = 1 Then
        flag = 3
        For i As Integer = t.TopPosition To t.BottomPosition
            t.Rows(i).Locked = False
        Next
    End If
    flag = 0
End If

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


加好友 发短信
等级:婴狐 帖子:18 积分:229 威望:0 精华:0 注册:2008/10/16 22:42:00
  发帖心情 Post By:2013/2/16 14:05:00 [只看该作者]

批量锁定行,批量解锁行应在FOXTABL表内部设计个功能。


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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2013/2/16 14:09:00 [只看该作者]

 这个功能不会内置的,因为不具备普片性。解锁过程中需要输入密码。单独设置比较好。

 回到顶部