乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 75|回复: 4

VB 6树视图和节点

[复制链接]

2

主题

37

帖子

2

银币

初来乍到

Rank: 1

铜币
45
发表于 2005-10-13 09:05:25 | 显示全部楼层 |阅读模式
我在一个表单上有一个treeview控件,该控件填充了许多父分支。每个父分支都包含许多子分支和孙子分支。每个节点都有一个复选框,用户可以选中或取消选中。我想做的是隐藏未选中的主父分支,从而隐藏它们下面的所有分支。相反,如果未选中任何内容,则所有分支都应可见(或启用)
我一直在考虑获取一个对我要从树中删除的所有根节点的引用,并将它们存储在一个集合中。然后,我可以使用该集合用“隐藏”的树枝重新填充树
  1. Dim i As Long, upper As Long
  2. Dim rootNodes As New Collection
  3. Dim myNode As MSComctlLib.Node
  4. upper = tvHoles.Nodes.Count
  5. For i = 1 To upper
  6.     Set myNode = tvHoles.Nodes.Item(i)   
  7.     If myNode.Tag = "Root" Then
  8.         rootNodes.Add myNode
  9.     End If
  10. Next
  11. If rootNodes.Count > 0 Then
  12.     Set myNode = rootNodes.Item(1)
  13.     tvHoles.Nodes.Remove myNode.Index
  14.     msgbox myNode.tag
  15. End If

上面的代码片段成功地获取了对树视图中第一个根节点的引用,然后将其从树视图中删除。myNode对象似乎保留了对其在树中时拥有的所有内容的引用,包括其子对象。我似乎无法找到将myNode对象添加回树的方法。如果您能帮助实现此功能,甚至只是禁用节点,我们将不胜感激。

本帖以下内容被隐藏保护;需要你回复后,才能看到!

游客,如果您要查看本帖隐藏内容请回复
回复

使用道具 举报

2

主题

37

帖子

2

银币

初来乍到

Rank: 1

铜币
45
发表于 2005-10-13 09:46:43 | 显示全部楼层
不要担心这个...我决定放弃树景。事实证明,需要进行的更改使用户对treeview控件感到困惑。所以我选了几个盒子。
回复

使用道具 举报

2

主题

37

帖子

2

银币

初来乍到

Rank: 1

铜币
45
发表于 2006-3-22 16:46:10 | 显示全部楼层
为了将来参考,我遇到了和你完全一样的问题,这是我的解决方案。(我直接从我的应用程序中复制了它,所以你必须通过并取出你不需要的东西,才能让它工作)
回复

使用道具 举报

2

主题

37

帖子

2

银币

初来乍到

Rank: 1

铜币
45
发表于 2006-3-22 16:49:37 | 显示全部楼层
哦,是的,这里的关键是我使用了两个树视图。其中一个是未过滤的版本(其中包含所有节点),另一个在每次应用过滤器时都会被擦除,并根据过滤器条件重新填充。然后,您只需将所有事件传回原始树视图。例如
  1. Private Sub FilterResults_NodeClick(ByVal Node As MSComctlLib.Node)
  2. On Error GoTo Trap
  3. ModelNames_NodeClick Node
  4. Set ModelNames.SelectedItem = Node
  5. Exit Sub
  6. Trap:
  7. Select Case MsgBox(Err.Description, vbAbortRetryIgnore, Err.Number)
  8.     Case vbAbort
  9.         Exit Sub
  10.     Case vbRetry
  11.         Stop
  12.         Resume
  13.     Case vbIgnore
  14.         Resume Next
  15.     End Select
  16. End Sub

回复

使用道具 举报

2

主题

37

帖子

2

银币

初来乍到

Rank: 1

铜币
45
发表于 2006-3-22 20:34:43 | 显示全部楼层
你好,梅隆先生。很高兴见到你。希望你过得好。
欢迎来到theSwamp。
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-7-6 05:52 , Processed in 0.758636 second(s), 62 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表