数据库中的数据是这样的:node_id node_name node_parent
---------------------------------------
001 中国 000
002 河北 001
003 河南 001
004 四川 001
005 浙江 001
006 郑州 003
007 石家庄 002
008 杭州 005
009 成都 004怎么把这样数据读取到TreeView控件.VB中的TreeView的节点都有一个Key属性,可以用这个Key来标识一个节点,添加子节点的时候,就用这个Key.Delphi怎么用呢.
---------------------------------------
001 中国 000
002 河北 001
003 河南 001
004 四川 001
005 浙江 001
006 郑州 003
007 石家庄 002
008 杭州 005
009 成都 004怎么把这样数据读取到TreeView控件.VB中的TreeView的节点都有一个Key属性,可以用这个Key来标识一个节点,添加子节点的时候,就用这个Key.Delphi怎么用呢.
怎么通过自这个Data属性查找到一个节点.就是说怎么查找一个节点,或者用其它的属性,比如Text,只能用遍历的方法吗?
因为data是一个指针(到底按它所指的结构的什么域来匹配,无法预知的),text只是一个标题,重复是很有可能的
GetNode 怎么用,那个参数是个是会类型. HTREEITEM
begin
Node:=tv1.Items.Add(nil,'中国');
tv1.Items.AddChild(node,'河北');
Node:=tv1.Items.AddChild(Node,'上海');
tv1.Items.AddChild(node,'浦东');
end;这个代码可以演示在TREEVIEW增加NODE。你的信息都在NODE中。可以用遍历的方法加入了。不过想偷懒的可以用CXDBTREELIST来做,直接搞定。
当然你要是在TreeView中找,也不是不可以,应该是遍历
TAPlace = record
id : string ;
name : string ;
parent : string ;
end ;var
p : PAplace ;
node:TTreeNode;
begin
new(p) ;
p.id := '001' ;
p.name := '中国' ;
p.parent :='000' ;
node := TreeView1.Items.Add(p.name) ;
node.Data := p;end ;