请问treeview的用法(100分)

  • 主题发起人 主题发起人 lpacec
  • 开始时间 开始时间
L

lpacec

Unregistered / Unconfirmed
GUEST, unregistred user!
各位大侠,请问在treeview中怎么动态的调用库文件中的内容(比如是ACCESS库)并将其以tree形式显示在treeview中?
 
编程实现, 或者找其他的类似控件代替!
 
用dbdxtreeview,设置一下,就可以了,

treeview.items.add(....);
treeview..subitems.add(....);
 
用这个方法是可以加入,但是我怎么加入数据库中的数据,并且能改库他的图标?
 
procedure Tmainform.FileTreeImageIndex;
var i:integer;
anode:TTreenode;
begin
for i:=0 to treeview1.Items.Count-1 do
begin
anode:=treeview1.Items;
if anode.Level=0 then
begin
anode.ImageIndex:=2;
anode.SelectedIndex:=3;
end;

if anode.Level=1 then
begin
anode.ImageIndex:=0;
anode.SelectedIndex:=1;
end;
end;
end;
 
试试dxTreelist吧,非常好的控件,而且有许多其它强大的功能.
可以代替stringgrid的.建议一下.
//当然完成你说的功能,楼上的方法行.
 
type
TTreedata=^Ptreedata;
ptreedata=record
id:string;
name:string;
end;
var
treedata:TTreedata;
treenode1,treenode2:Ttreenode;
begin
dataset1.open;
id:=dataset1.fieldbyname('id').asstring;
name:=dataset1.fieldbyname('id').asstring;
while not dataset1.eof do
begin

new(treedata);
treedata^.id:=id;
treedata^.name:=name;
treenode1:=treeview1.items.add(nil,name);
treenode1.data:=treedata;
treenode1.stateindex:=1 //图标
dataset2.open
while not dataset2.eof do
begin
id:=dataset2.fieldbyname('id').asstring;
name:=dataset2.fieldbyname('id').asstring;
new(treedata);
treedata^.id:=id;
treedata^.name:=name;
treenode2:=treeview1.items.addchild(treenode1,name);
treenode2.data:=treedata;
treenode2.stateindex:=1 //图标
dataset2.next;
end;
dataset1.next;
end;
基本方法如上,在改动一下具体的数值就行乐
 
高手,请问dataset1在哪呢?我一直找不到
 
后退
顶部