以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助] 怎么能用AllNodes直接引用指定名称的节点呢? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=154341) |
-- 作者:龙潭春早 -- 发布时间:2020/9/11 16:34:00 -- [求助] 怎么能用AllNodes直接引用指定名称的节点呢? 1、怎么能用AllNodes,直接引用指定名称的节点呢? 用AllNodes打开指定位置的节点,执行正常; 但是,用AllNodes打开指定名称的节点,却出错。 帮助中对AllNodes介绍的少。 2、代码 1) 用AllNodes打开指定位置的节点,执行正常: Forms("窗口1").Controls("TreeView1") tr.CollapseAll() \' 关闭所有节点 tr.SelectedNode = tr.AllNodes(18) \'选择节点 tr.Select() \'选择目录树( 的节点 ) 2) 但是,用AllNodes打开指定名称的节点,却出错: Forms("窗口1").Controls("TreeView1") tr.CollapseAll() \' 关闭所有节点 tr.SelectedNode = tr.AllNodes(“表C”) \'选择节点 tr.Select() \'选择目录树( 的节点 ) |
-- 作者:有点蓝 -- 发布时间:2020/9/11 16:59:00 -- 没有这个用法。只能遍历判断名称 |
-- 作者:龙潭春早 -- 发布时间:2020/9/11 17:27:00 -- 哦 下面这个办法,看着好像对,但是好像也不对,问题出在什么地方呢? Dim tr As WinForm.TreeView = Forms("窗口1").Controls("TreeView1") tr.SelectedNode.Name = "表C" Dim nd As WinForm.TreeNode = tr.SelectedNode Dim id As Integer = nd.index output.show("节点的位置 id = " & id) tr.CollapseAll() tr.SelectedNode = tr.AllNodes(id) tr.Select() [此贴子已经被作者于2020/9/11 21:37:10编辑过]
|
-- 作者:有点蓝 -- 发布时间:2020/9/12 8:47:00 -- AllNodes是一个List(of treenode)集合,集合的用法参考:http://www.foxtable.com/webhelp/topics/0217.htm nd.index指节点的位置,这个位置并不是针对所有节点,而是同一个父节点的子节点的顺序。所以AllNodes(id)来定位某一个节点基本是不正确的,建议还是遍历,无法偷懒的
|
-- 作者:龙潭春早 -- 发布时间:2020/9/14 15:28:00 -- 嗯嗯 多谢 |