Foxtable(狐表)用户栏目专家坐堂 → [求助]我想给右键增加一个取消上一步筛选或者在窗口里增加个取消上一步筛选的功能怎么做


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

主题:[求助]我想给右键增加一个取消上一步筛选或者在窗口里增加个取消上一步筛选的功能怎么做

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


加好友 发短信
等级:幼狐 帖子:79 积分:969 威望:0 精华:0 注册:2022/11/15 18:31:00
[求助]我想给右键增加一个取消上一步筛选或者在窗口里增加个取消上一步筛选的功能怎么做  发帖心情 Post By:2024/11/28 11:18:00 [只看该作者]

多次筛选后,想返回到上一次的筛选结果

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110842 积分:564154 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/11/28 11:21:00 [只看该作者]

使用一个全局变量,比如集合,每一次筛选就把条件放入集合。上一次就是集合里倒数第二项的条件

 回到顶部
帅哥,在线噢!
lur320
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1031 积分:8978 威望:0 精华:0 注册:2015/8/12 16:28:00
  发帖心情 Post By:2024/11/28 14:19:00 [只看该作者]

自定义函数

 creatfilters  筛选之后记录当前筛选的表和筛选规则
 If Vars("tbname") <> "" Then
    If Vars("tbname") = CurrentTable.Name Then
        Vars("tbname") = CurrentTable.Name
        tbfilters.Add(CurrentTable.Filter)
    Else
        Vars("tbname") = CurrentTable.Name
        tbfilters.Clear
        tbfilters.Add(CurrentTable.Filter)
    End If
Else
    Vars("tbname") = CurrentTable.Name
    tbfilters.Clear
    tbfilters.Add(CurrentTable.Filter)
End If


withdrawfilter  撤回筛选

If Vars("tbname") <> "" Then
    If Vars("tbname") = CurrentTable.Name Then
        Try
            Dim c As Integer = tbfilters.Count - 1
            If c = 0 Then
                CurrentTable.Filter = ""
                tbfilters.Clear
            Else
                CurrentTable.Filter = tbfilters(c - 1)
                tbfilters.RemoveAt(c)
            End If         
        Catch ex As Exception
        End Try
    Else
        Vars("tbname") = Nothing
        tbfilters.Clear
    End If
End If

 回到顶部