delphi中的treeview控件如何取到选择节点的索引号?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了delphi中的treeview控件如何取到选择节点的索引号?相关的知识,希望对你有一定的参考价值。

我在treeview中的OnChange事件中输出Node.Index时只能得到第一级的index是0,但我选择的是第一级中的子节点,想得到子节点的顺序索引没有办法啊,有谁知道吗
楼下的node.AbsoluteIndex不管用,都显示0

node.AbsoluteIndex

每一个节点下子节点形成这一节点的Items属性,当前节点有一个唯一的Index(TreeNode的Index属性),用于说明子节点在Items中的位置,每一个节点下的子节点是顺序编号的,第一个是0,第二个是1,依次类推。用IndexOf方法获得子节点的顺序,绝对顺序(AbsoluteIndex)则是指从Treeview第一个项开始的顺序值,第一个是0,如此推下去。Item属性则根据Index的值返回当前节点的第Index个子节点。Count则表明属于此项的所有子节点的数量。用MoveTo方法将Item由一个位置移到另一个位置。

参考资料:http://www.cnblogs.com/sideandside/archive/2007/05/17/750740.html

参考技术A 其实做程序不用那么费事的在数据库里取
你可以建立一个文件 取个名字叫 ni.sb
然后你在每次显示窗口之前
把这个文件读到程序中,语句:treeview1.loadfromfile('c:\ni.sb')
每次关闭窗口 或是 treeview1 失去焦点的时候
treeview1.savetofile('c:\ni.sb')

我自己看不懂那个所谓的树,本人不懂数据结构,自己摸索的方法。比从数据库读取简单多了
参考技术B node.absoluteindex
我试过了,可以的啊

C#中treeview控件中,如何使第一个节点默认选中高亮?

即使修改了selectnode属性的值,但是该节点并不会像是被单击之后一样的效果。
请问如何达到如同单击选择了之后的效果。

参考技术A 除了Select还要Focus,试试。本回答被提问者采纳

以上是关于delphi中的treeview控件如何取到选择节点的索引号?的主要内容,如果未能解决你的问题,请参考以下文章

关于的Delphi 的treeview控件的用法请教大家

DELPHI TreeView控件问题

delphi编程treeview,memo

delphi treeview控件读取INI文件。

delphi中treeview的用法

Delphi下Treeview控件基于节点编号的访问