标题:关于treeview ,达人进来看下,小弟新人
只看楼主
benny_dong
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2007-8-9
 问题点数:0 回复次数:3 
关于treeview ,达人进来看下,小弟新人

新学delphi,按照书上学习,在treeview中创建动态节点
其中,“联系目录”为根节点,在根据表中 “类型”字段添加子节点
但是在treeview组件中无法显示出来,请问是什么原因?
数据库应该连接没有问题

private
{ Private declarations }
public
Node1,Node2:TTreeNode;
{ Public declarations }
end;

var main:Tmain;

implementation
{$R *.dfm}

procedure TMain.TreeviewReFresh;
begin
Node1:=Treeview1.Items.Add(nil,'联系目录');
ADOQuery1.Close;
ADOQuery1.SQL.Text:='Select Distinct 类型 From msn'; //msn表中的类型字段//
ADOQuery1.Open;
if ADOQuery1.RecordCount>0 then
begin
while not ADOQuery1.Eof do
begin
Node2:=TreeView1.Items.AddChild(Node1,ADOQuery1.Fields[0].asstring);
TreeView1.Items.AddChild(Node2,'');
ADOQuery1.Next;
end;
end;
end;

搜索更多相关主题的帖子: treeview 新人 
2007-08-09 11:55
anthony634
Rank: 6Rank: 6
来 自:西南交大
等 级:贵宾
威 望:24
帖 子:653
专家分:10
注 册:2006-6-8
得分:0 

没创建到节点么?那应该是这两句有问题
if ADOQuery1.RecordCount>0 then
begin
while not ADOQuery1.Eof do
begin

2007-08-09 13:44
benny_dong
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2007-8-9
得分:0 

什么问题呢?

2007-08-10 10:06
anthony634
Rank: 6Rank: 6
来 自:西南交大
等 级:贵宾
威 望:24
帖 子:653
专家分:10
注 册:2006-6-8
得分:0 

Node2:=TreeView1.Items.AddChild(Node1,ADOQuery1.Fields[0].asstring);
TreeView1.Items.AddChild(Node2,'');

这里两句即使后面的名字为空也会创建一个无名节点,所以只可能是没执行到这里,至于什么问题我不清楚,或许是你的mdb文件本来就没记录。用F8跟踪RecordCount是不是等于0就可以了

2007-08-10 10:32



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-161456-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.948824 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved