关于TTreeView的问题
我想实现这样的功能:
->2004销售额
->->2004年1月销售额
.....
->->2004年12月销售额
->2005销售额
->->2005年1月销售额
.....
->->2005年12月销售额
我的代码如下:
ADOQ1.Close;
ADOQ1.SQL.Text := ' select * from CYearMsg order by YearName ';
ADOQ1.Open;
ADOQ1.First;
YCount := ADOQ1.RecordCount;
for i:= 0 to ADOQ1.RecordCount-1 do
begin
TreeView1.Items.Add(nil,ADOQ1.FieldByName('YearName').AsString+'年销售额:'+ADOQ1.FieldByName('MNY').AsString) ;
TreeView1.Items[I].ImageIndex := ADOQ1.FieldByName('YearName').AsInteger;
ADOQ1.Next;
end;
ADOQ2.Close;
ADOQ2.SQL.Text := ' select * from CMonthMsg order by MonthName ';
ADOQ2.Open;
ADOQ2.First;
for i:= 0 to ADOQ2.RecordCount-1 do
begin
for j:= 0 to YCount-1 do
if Pos(InttoStr(TreeView1.Items[j].ImageIndex),ADOQ2.FieldByName('MonthName').AsString) >0 then
begin
TreeView1.Items.AddChild(TreeView1.Items[j],ADOQ2.FieldByName('MonthName').AsString+'销售额:'+ADOQ2.FieldByName('MNY').AsString);
end;
ADOQ2.Next;
end;
出来的效果是:
->2004销售额
->->2004年1月销售额
->->->2004年1月
->->->->2004年1月
……
->->->->2005年12月
->->->2004年2月
……
->->->2005年12月
.....
->->2004年12月销售额
->2005销售额
都跑到第一个节点去了,这个根据上面的代码该怎么该才能出现我想要的结果?