以文本方式查看主题
- Foxtable(狐表) (http://foxtable.net/bbs/index.asp)
-- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2)
---- [求助]目录树如何取消筛选? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=1561)
|
-- 作者:t_fs
-- 发布时间:2009/1/6 15:53:00
-- [求助]目录树如何取消筛选?
窗口中加入目录树后,点击各节点均可实现筛选功能,可是在CASE 3 中想实现取消筛选却不能实现。不知是什么原因。点击节点3后也能执行,但不是显示所有记录,而是隐藏所有记录。
大家帮助看看 Tables("项目管理").ApplyFilter = False ,这句有问题吗? 谢谢了!!
Dim Value()As String Value = e.Node.FullPath.Split("\\") Select Case e.Node.Level Case 0 Tables("项目管理").Filter ="[制作人] = \'" & Value(0) & "\'" Case 1 Tables("项目管理").Filter ="[制作人] = \'" & Value(0) & "\' And [申请单位] = \'" & Value(1) & "\'" Case 2 Tables("项目管理").Filter ="[制作人] = \'" & Value(0) & "\' And [申请单位] = \'" & Value(1) &"\' And [厂家名称] = \'" & Value(2) & "\'" Case 3 Tables("项目管理").ApplyFilter = False End Select
|
-- 作者:狐狸爸爸
-- 发布时间:2009/1/6 16:11:00
--
我测试有效,也许下面这一行根本就没有执行,检查你的分支语句。 你的语句看上去很奇怪的,也许应该:
Case Else Tables("项目管理").ApplyFilter = False
|
-- 作者:t_fs
-- 发布时间:2009/1/6 20:18:00
--
此主题相关图片如下:tt截图未命名.jpg
我的目录树如上。从上图中看,好象“全部记录”属于根节点,用 Case 3 来判断可能是错误的。因为,case 3 属于第4层目录了。
是不是应该在Case 0 中加以判断呢?修改代码为:
Case 0 if Forms("窗口4").Controls("TreeView1").Nodes(0).Text = "全部记录" then Tables("项目管理").ApplyFilter = False else Tables("项目管理").Filter ="[制作人] = \'" & Value(0) & "\'" end if
可是,改了后还是不能取消筛选,大家看看这么改可以吗?谢谢了!
|
-- 作者:狐狸爸爸
-- 发布时间:2009/1/6 20:44:00
--
Case 0 if e.Node.Text = "全部记录" then Tables("项目管理").ApplyFilter = False else Tables("项目管理").Filter ="[制作人] = \'" & Value(0) & "\'" end if
|
-- 作者:t_fs
-- 发布时间:2009/1/7 7:53:00
--
以下是引用狐狸爸爸在2009-1-6 20:44:00的发言:Case 0 if e.Node.Text = "全部记录" then Tables("项目管理").ApplyFilter = False else Tables("项目管理").Filter ="[制作人] = \'" & Value(0) & "\'" end if 按上述代码,解决了筛选问题。谢谢大家 !!
|