以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  逻辑列问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=104895)

--  作者:jick0526
--  发布时间:2017/8/8 4:15:00
--  逻辑列问题
老师,请问下,我表A有个逻辑列,我想只要在逻辑列打勾,那么打勾的行就自动会变成锁定行,如果没打勾就是正常的行,代码要怎么写,谢谢!
--  作者:有点色
--  发布时间:2017/8/8 8:42:00
--  

click事件

 

If e.Col.name = "第五列" Then
    e.Row("第五列") = not e.Row("第五列")
    e.Row.Locked = e.Row("第五列")
End If


--  作者:jick0526
--  发布时间:2017/8/8 17:27:00
--  
老师,上面的代码放到click事件后,逻辑列不能打√

--  作者:有点甜
--  发布时间:2017/8/8 17:54:00
--  
以下是引用jick0526在2017/8/8 17:27:00的发言:
老师,上面的代码放到click事件后,逻辑列不能打√

 

改一下

 

If e.Col.name = "第五列" Then
    If e.Row.Locked Then
        e.Row("第五列") = False
    End If
    e.Row.Locked = e.Row("第五列")
End If


--  作者:jick0526
--  发布时间:2017/8/14 21:49:00
--  
老师,不好意思,我想把下面的代码改成字符列,如果第五列等于审核,那么此行自动变成锁定行,谢谢
If e.Col.name = "第五列" Then
    If e.Row.Locked Then
        e.Row("第五列") = False
    End If
    e.Row.Locked = e.Row("第五列")
End If
--  作者:有点蓝
--  发布时间:2017/8/14 22:06:00
--  
If e.Col.name = "第五列" Then
    If e.Row.Locked Then
        e.Row("第五列") = False
    End If
    e.Row.Locked = e.Row("第五列") = “审核
End If
--  作者:有点甜
--  发布时间:2017/8/15 10:35:00
--  

click事件或者doubleclick事件

 

If e.Col.name = "第五列" Then
    e.Table.StartEditing
End If

 

datarcolchanged事件

 
If e.DataCol.name = "第五列" Then
    e.DataRow.Locked = (e.DataRow("第五列") = "审核")
End If