从表中读数据到TREEVIEW中(100分)

  • 主题发起人 主题发起人 xiaocai
  • 开始时间 开始时间
X

xiaocai

Unregistered / Unconfirmed
GUEST, unregistred user!
如果我的表里的数据是这样的2000年1月有20条,2000年2月有20条,.....,2002年X月20条,
我怎样才能在一个TREEVIEW控件里把它显示出来,比如说有一个ROOTNODE1是2000年,一个
ROOTNODE2是2002年,怎样让每个月生成为一个CHILDNODE列在相应的年份下呢?
如果不吝赐教,麻烦大虾把一点点源程序放上来行吗?:P
 
第一层是年,第二层是月
Query1----------select distinct year(date) as S_year from 表

With TreeView1 do
For i:=0 To Query1.RecordCuont-1 do
Begin
MenuTree:=Items.Add(nil,Query1.FieldbyName('S_year'));
Query2---------select * distinct month(date) as S_month from 表 where year(date)=Query1.FieldbyName('S_year')
For j:=0 to Main.Query2.RecordCount-1 do
Begin
Items.AddChild(MenuTree,Table1.FieldbyName('S_month'));
End;
End;
 
to yyh0393:
不好意思,我是说符合每个月的记录有20条,但是只生成一个CHILDNODE
 
找个dxTreeList,好用得很,年示例就可以解决你的问题.
www.51delphi.com有下.
 
<<每个月的记录有20条,但是只生成一个CHILDNODE>>有意义吗?
 
有好的控件请DFW们给我也来一个
 
yyh0393是对的啊,
一个treeview,第一层是年,第二层是月,每个月的记录还要靠treeview的onchange事件中
搜索表格
 
不好意思在大家的引导下我已经找出答案了,怪我没有说清楚,
因为我的程序是20X20的形式显示的,所以20条记录对用户来说只是一条记录而已
接受大家的答案了!谢谢
 
多人接受答案了。
 
后退
顶部