Foxtable(狐表)用户栏目专家坐堂 → [求助]窗口表根据某列的列值隐藏其他列


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

主题:[求助]窗口表根据某列的列值隐藏其他列

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


加好友 发短信
等级:四尾狐 帖子:963 积分:8510 威望:0 精华:0 注册:2012/10/3 13:25:00
[求助]窗口表根据某列的列值隐藏其他列  发帖心情 Post By:2017/12/24 14:37:00 [只看该作者]

窗口表 Tables("EMS编辑_table2"),根据“审判程序”列值的不同,隐藏其他列;

现在仅第一段代码运行正确(就是“If e.Table.Current("审判程序") = "一审" Then...”),

后面两段代码把图中第三列以后的多层列都隐藏了,是什么原因?

 
图片点击可在新窗口打开查看此主题相关图片如下:image 1.jpg
图片点击可在新窗口打开查看

 

窗口表的CurrentChanged事件代码:

If e.Table.Current Is Nothing Then Return    '根据某列内容隐藏列
If e.Table.Current("审判程序") = "一审" Then
    For Each c As Col In Tables("EMS编辑_table2").Cols
        If c.name.startswith("二审_") Or c.name.startswith("行审_") Then
            c.Visible = False
        End If
    Next
ElseIf e.Table.Current("审判程序") = "二审" Then
    For Each c As Col In Tables("EMS编辑_table2").Cols
        If c.name.startswith("一审_") Or c.name.startswith("行审_") Then
            c.Visible = False
        End If
    Next
ElseIf e.Table.Current("审判程序") = "行审" Then
    For Each c As Col In Tables("EMS编辑_table2").Cols
        If c.name.startswith("一审_") Or c.name.startswith("二审_") Then
            c.Visible = False
        End If
    Next
Else
    Return
End If



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


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

你只是隐藏,没有还原,你需要还原的。

 

        If c.name.startswith("一审_") Or c.name.startswith("行审_") Then
            c.Visible = False

        Else

            c.Visible = True
        End If


 回到顶部