jtree - treepath

drob

Mitglied
moinmoin,

ich habe ein html/xml-file in ein jtree importiert,
und möchte (durch den nutzer ausgewählte)Elemente des Tree's
speichern.
soweit auch alles kein problem,
über jtree.getselected bekommt man ein TreePath-element zurück

jedoch, wenn ich den jtree(das Model) aus dem selben htmlfile neu erzeuge,
kann ich meine treepathelemente "vergessen".
und z.b. funktioniert ein jtree.setselection(treepath) nichtmehr...

hat jemand ahnung davon wie man
- ein treepath-element am besten speichert(und hinterher wiedererstellen)
aktuell möchte ich die nutzereingaben im xml-format speichern
- ein element in einem tree sucht
 
Ja ein TreePath ist dann nicht mehr gültig, weil die Objekte nicht mehr die selben sind.

Kannst du deinen Objekten nicht eine ID geben, so dass du sie darüber wiederfinden kannst?
 
nunja, das doofe ist halt, ich kann die TreePath's ja auslesen und speichern(in ein xml-file), jedoch wenn ich sie später(nach einem Neustart der Software)im JTree anzeigen lassen will(für den Benutzer) funktioniert das nicht.

(was soll ich mit einem Pfad, dem ich nicht "nachgehen/wiederverwenden" kann)

ok,zum allgemeinen Verständnis ...
ein wenige ausführlicher die Aufgabe des Tools...
ich möchte zyklisch aus einer Website Daten auslesen. Um diese Daten zu Spezifizieren wird dieses Tool verwendet.

meine Vorgehensweise:
1. Website laden
2. Site in DOM umwandeln
3. aus dem Dom ein jtreemodel erzeugen
4. Nutzer selektiert node in in JTree und der TreePath soll gespeichert werden
(z.b. [html, body, div, table, tr, td, a, nobr, #text, ...] )

Zyklische Datenerfassung soll Mithilfe der Pfade und dem DOM realisiert werden.
 
Zuletzt bearbeitet:
Es ist aber möglich dass du dir den TreePath aus einem alten TreePath neu erstellst. Dafür musst du über den alten Path iterieren und nach Objekten im neuen Tree suchen die gleich denen aus dem TreePath sind. Hast du ein Objekt gefunden packst du das in deinen neuen Pfad.
 
danke für deine Hilfe,
ich habe nun folgende Lösung gewählt,
tree.gif
über ein Rechtsklick auf ein Treeelement kann man,
in einem popup-menu, die Parameter aus der Liste setzten.
Die Parameter enthalten den Path-String, wie er auf dem
Label unten zusehen ist.

beim zyklischen Auslesen der Parameter aus der Website muss ich dann
"wohl irgendwie" mit dem Path-String die Elemente im Dom finden
und verarbeiten.

gruss
 
Zurück