![]() |
XML und TreeView = laden
HI,
ich habe folgendes Problem. Denke mal das es sich um einen Logikfehler handelt. Ich beschäftige mich seit ein paar Tagen mit XML. Nun bin ich auf das Thema gestoßen "TreeView". Leider verstehe ich nicht ganz wie ich die Knoten bzw. die Unterknoten erstellen kann in einer Schleifen. So sieht meine XML Datei aus
XML-Code:
und so soll das Endergebnis im TreeView aussehn
<xml version="1.0"?>
<test2oo6> <auto name="hans_wurst" url="http://"> <files no="1" aktionsstatus="Suchen" totalsize="1024" loadsize="671" status="1" filename="hans.xls"></files> <files no="2" aktionsstatus="Laden" totalsize="1024" loadsize="671" status="1" filename="hans2.xml"></files> </auto> <auto name="Anna_nass" url="http://"> <files no="1" aktionsstatus="Suchen" totalsize="1024" loadsize="671" status="1" filename="anna.xls"></files> <files no="2" aktionsstatus="Laden" totalsize="1024" loadsize="671" status="1" filename="anna.xml"></files> </auto> </test2oo6>
Code:
Leider habe ich bis jetzt keine Lösungsansatz gefunden der mir wirklich.
-Hans_wurst
-Hans.XML -Aktionsstatus: Suchen -Totalsize: 1024 -loadsize: 671 -Status:1 -Hans2.xml -Aktionsstatus: laden -Totalsize: 1024 -loadsize: 671 -Status:1 usw. Wäre nett wenn ihr mit helfen könntet MfG MkA2k |
Re: XML und TreeView = laden
HI und Willkommen in der DP :dp:
Zitat:
Schreib das am Besten erstmal genauer auf, sag einfach mal, wie du die XML-Datei im Moment einliest (mit Hilfe welcher Komponenten?) und wie du jetzt versucht hast das TreeView zu zu füllen und was dabei rauskam. An sich müsste der Ansatz sinngemäß darin liegen, dass du die XML-Datei mit einliest (dafür gibt es verschiedene Komponenten) und hier in einer Schleife über alle Knoten läufst. Dabei schaust du immer, ob ein Knoten Kind-Knoten hat und für jeden Kindknoten kannst du eine Ebene tiefer in deinem Treeview gehen. So ganz grob gesagt. Wie gesagt, richtig gut Helfen kann man erst, wenn du sagst wo du gerade Probleme hast. Gruß Der Unwissende |
Re: XML und TreeView = laden
Hi,
ups ich hab vergessen den Code anzufügen
Delphi-Quellcode:
Leider ist die Ausgabe gleich 0. Er erstellt einfach keinen Knoten, das Treeview ist somit leer :-(.
procedure TForm1.Button1Click(Sender: TObject);
var autoname, files : IXMLDOMNodeList; i, : integer; begin xmldoc := CoDOMDocument40.create; xmldoc.setProperty('NewParser', TRUE); xmldoc.loadxml(ExtractFilePath(Application.ExeName)+'autows.xml'); TreeView1.Items.BeginUpdate; Treeview1.Items.Clear; autoname := xmldoc.selectNodes('test2oo6/auto/@name'); // files := xmldoc.documentElement.selectNodes('test2oo6/auto/@filename'); for i:= 0 to autoname.length -1 do begin with treeview1.Items do begin Add(nil, autoname.item[i].text); end; end; end; Ich denke mal es liegt daran das die Zeile der XML Datei so aufgebaut ist
XML-Code:
oder liege ich da falsch?
<auto name="hans_wurst" url="http://">
|
Re: XML und TreeView = laden
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo MkA2k,
mit deinem Code wirst du den Baum nie so aufbauen, wie du ihn skizziert hast. Wenn du magst, dann schau dir die Demo an, die ich dir angehängt habe. Ist das Absicht, dass das root element 2oo6 statt 2006 heißt? Freundliche Grüße vom marabu |
Re: XML und TreeView = laden
Hi marabu
Danke erstmal. Ich schau mir heute abend mal deine Demo an. Mal gucken ob ich da durch steige ansonsten melde ich mich nochmal Cya MkA2k |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:55 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz