Thema: Delphi VirtualTreeView

Einzelnen Beitrag anzeigen

felix56

Registriert seit: 23. Nov 2005
8 Beiträge
 
Delphi 2007 Enterprise
 
#1

VirtualTreeView

  Alt 3. Feb 2006, 13:29
Hallo Zusammen

Ich habe ein Problem mit mit VirtualTreeView. Ich möchte aus Datenbanken Werte anzeigen. Root-Node und 1. Child-Node ist kein Problem. Ich bekomme aber einfach kein 2. Child-Node hin. Die Daten werden als 1. Child-Node in der Root angezeigt. Ich habe folgenden Code:

Delphi-Quellcode:
function AddVSTStructure(AVST: TCustomVirtualStringTree; ANode: PVirtualNode;
  ARecord: TTreeData): PVirtualNode;
var
 Data: PTreeData;
begin
 Result:=AVST.AddChild(ANode);
 Data:=AVST.GetNodeData(Result);
 Avst.ValidateNode(Result, True);
 Data^.FCaption:=ARecord.FCaption;
end;

ServiceTable.First;

 VST1.NodeDataSize:=SizeOf(TTreeData);
 VST1.BeginUpdate;
 while not PackageTable.Eof do
  begin
   PackageName:= PackageTable.FieldByName('INSTANCE').AsString;
   TreeData.FCaption:=(PackageName);
   Node:=AddVSTStructure(VST1,nil,TreeData);
   ServicePackageTable.First;
   while not ServicePackageTable.Eof do
    begin
     ServiceVerkTable.First;
     while not ServiceVerkTable.Eof do
      begin
       Instance:= ServiceVerkTable.FieldByName('INSTANCE').AsString;
       TreeData.FCaption:=(Instance);
       AddVSTStructure(VST1,Node,TreeData);
       ServiceTable.First;
       while not ServiceTable.Eof do
        begin
         Service:= ServiceTable.FieldByName('Service').AsString;
         TreeData.FCaption:=(Service);
         AddVSTStructure(VST1,Node,TreeData);
         ServiceTable.Next;
        end;
       ServiceVerkTable.Next;
      end;
     ServicePackageTable.Next;
    end;
   PackageTable.Next;
  end;
 VST1.EndUpdate;
 VST1.SortTree(0,sdAscending,True);
Wo mache ich den Fehler????
Bin für jede Hilfe dankbar.

Gruss
Felix
Felix
  Mit Zitat antworten Zitat