JTree: Nodes dynamisch anlegen via LinkedHashMap

FantaChris

Mitglied
Hallo zusammen,

ich habe derzeit Probleme in einem JTree die Childnodes den Parentnodes korrekt zuzordnen.

Hintergrund:

  • Die ChildNodes sind in einer HashMap hinterlegt.
  • Die ParentNodes sind in einem DefaultListModel<String> hinterlegt.
  • Die Zuordnung untereinander kann ich über die HashMap durchführen.
  • Der Value der HashMap entspricht dem Wert im ListModel.
Beispiel:
  • ParentNode1 -> "Fußball"
  • ParentNode2 -> "Schwimmen"
  • ChildNode 1 -> Key "Schuhe"; Value "Fußball"
  • ChildNode 2 -> Key "Pfosten"; Value "Fußball"
  • ChildNode 3 -> Key "Badehose"; Value "Schwimmen"

    etc....
Also habe ich die Parentnodes "Fußball" und "Schwimmen" mit den entsprechenden Childs...

Ziel:

korrektes Iterieren der Childnodes abhängig davon, ob dessen Value der Parentnode entspricht.
Wenn ja: Node darunter anlegen.

Durchführung:

Die Liste und die HashMap sind zu diesem Zeitpunkt mit den korrekten Werten bereits gefüllt. Es geht mir hier nur um den Aufruf, die Zuordnung und um die Anlage im JTree.

Java:
//Anlage des Urknotens
DefaultMutableTreeNode rootNode = new DefaultMutableTreeNode("Urknoten");

//Iterieren der Parentnodes und Anlage (funktioniert!)
for (int n = 0; n < listModel.size(); n++) {

	DefaultMutableTreeNode parentNode= new DefaultMutableTreeNode(listModel.get(n));
	rootNode.add(parentNode);


	//Hier ist das Problem
	//Wie kann ich den Value der LinkedHashMap abfragen und
	// diesen mit der listNode vergleichen?
	// und dynamisch anlegen?

	for (int i = 0; i < childList.size(); i++) {
					
		if (!childList.containsValue(parentNode)){
		parentNode.add(new DefaultMutableTreeNode(????));
		
	}

}

//Erzeugen des Baumes
DefaultTreeModel treeModel = new DefaultTreeModel(rootNode);
treeModel.reload();
jTree2.setModel(treeModel);

Vielen Dank für eure Hilfe. :)

Chris
 

Flown

Administrator
Mitarbeiter
so einfach geht das nicht, da du die umgekehrte Richtung eingeschlagen hast. Aber die Lösung ist: Das EntrySet aus der HashMap holen, vergleichen ob der Value Part equals deinem aktuellen Listen-Element ist und dann den Key Part als neuen TreeNode einfügen.

Sowas in der Art:

Java:
for(int i = 0; i < list.getSize(); i++) {
	String element = list.get(i);
	DefaultMutableTreeNode parent = new DefaultMutableTreeNode(element);
	root.add(parent);
	
	for(Entry<String, String> entries : map.entrySet()) {
		if(entries.getValue().equals(element)) {
			parent.add(new DefaultMutableTreeNode(entries.getKey()));
		}
	}
}
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
DStrohma Icons in JTree Nodes weiter nach rechts rücken Allgemeine Java-Themen 2
C JTree: ActionListener auf die Nodes Allgemeine Java-Themen 3
C JTree: Nodes automatisch öffnen Allgemeine Java-Themen 2
P JTree/ Nodes einfügen Allgemeine Java-Themen 2
Bananabert Swing jtree : image als user object Allgemeine Java-Themen 2
E Swing Jtree Allgemeine Java-Themen 9
R JTree - Mehrere Roots Allgemeine Java-Themen 6
M JTree aktualisieren nach Mausklick Allgemeine Java-Themen 12
DStrohma Jede node in JTree mit eigenem Icon Allgemeine Java-Themen 7
Benji0815 Verzeichnis wie im Windows Explorer in einem JTree anzeigen Allgemeine Java-Themen 6
S JAVA JTree rekursiv umschreiben Allgemeine Java-Themen 5
S Suche im JTree nach Neuaufbau Allgemeine Java-Themen 4
N JTree nicht genutzte Pfade schließen Allgemeine Java-Themen 2
G JTree Node löschen Allgemeine Java-Themen 2
G JTree Node verschieben Allgemeine Java-Themen 2
MQue leerer JTree Allgemeine Java-Themen 6
MQue JTree Allgemeine Java-Themen 6
MQue JCheckBox in JTree Allgemeine Java-Themen 2
F JTree in Jsp Allgemeine Java-Themen 2
T Äquivalent zu JTree Allgemeine Java-Themen 4
M JTree mit Rechtsklick markieren Allgemeine Java-Themen 4
P JTree Allgemeine Java-Themen 6
P aus JTree eine XML- Datei Allgemeine Java-Themen 6
P Vector auf JTree Allgemeine Java-Themen 6
P JTree Farbe Allgemeine Java-Themen 14
S JTree selektion erkennen und drauf reagieren Allgemeine Java-Themen 2
E JTree (schonwieder) - TreeCellEditor Allgemeine Java-Themen 9
E JTree - einzelnes Element (Knoten) editieren Allgemeine Java-Themen 2
E JTree - Selektieren mit Rechtsklick Allgemeine Java-Themen 15
P JTree ID vergeben Allgemeine Java-Themen 3
P JTree Allgemeine Java-Themen 4
P JTree/ JTabbedPane Allgemeine Java-Themen 34
L JTree Allgemeine Java-Themen 23
E root JTree Allgemeine Java-Themen 2
E Child in JTree hinzufügen Allgemeine Java-Themen 4
E JTree in NetBeans Allgemeine Java-Themen 2
R Objekt an Knoten von JTree anhaengen Allgemeine Java-Themen 2
R Daten aus Baum entsprechend in jTree einfuegen Allgemeine Java-Themen 2
T Jtree zu langsam beim klappen Allgemeine Java-Themen 8
S JTree - Brett vor'm Kopp Allgemeine Java-Themen 19
G Baumhierarchie in JTree eintragen Allgemeine Java-Themen 4
K JTree - Knoten expandieren Allgemeine Java-Themen 4
K JTree Inhalt löschen und Anzeige aktualisieren Allgemeine Java-Themen 13
G JTree automatisch sortieren lassen Allgemeine Java-Themen 5
Luma Diskettenlaufwerk rattert los bei Eintrag in JTree Allgemeine Java-Themen 6
G in Jtree suchen Allgemeine Java-Themen 2
K JTree plus eigener FileLoader Allgemeine Java-Themen 2
H Wie stellt ein JTree fest, wo etwas eingehängt werden soll? Allgemeine Java-Themen 2
berserkerdq2 Jemand einen Tipp wie man ein Javafx-Hintergrund "dynamisch" macht Allgemeine Java-Themen 3
E RMI FWH: RMI- Wie erstelle ich stubs dynamisch, bzw. unterdrücke eine Statisch-Warnung? Allgemeine Java-Themen 0
S Maven Jars dynamisch laden / Plugin-Struktur erstellen Allgemeine Java-Themen 14
T Statisch und dynamisch Allgemeine Java-Themen 1
MiMa Variableninhalte dynamisch abfragen Allgemeine Java-Themen 12
D Methode dynamisch aufrufen Allgemeine Java-Themen 2
S Externe Eclipse Projekte dynamisch einbinden Allgemeine Java-Themen 3
Thallius Externe .jar dynamisch einbinden Allgemeine Java-Themen 5
C Erste Schritte Baumstruktur (dynamisch) Allgemeine Java-Themen 9
B Reflection, invoke dynamisch befüllen Allgemeine Java-Themen 3
M Klassen Klasse Dynamisch laden und Konstruktor aufrufen Allgemeine Java-Themen 1
J rxtxserial.dll für 32 oder 64bit dynamisch einbinden Allgemeine Java-Themen 9
F Dynamisch ein Objekt einer bestimmten Subklasse erstellen Allgemeine Java-Themen 7
W Dateinamen dynamisch Parsen Allgemeine Java-Themen 12
T Classpath Klassen dynamisch erstellen Allgemeine Java-Themen 4
F Schlüsselworte Einstellungen dynamisch deserialisieren Allgemeine Java-Themen 5
S LaTeX Code in dynamisch erzeugten PDF's Allgemeine Java-Themen 8
X Dynamisch Konstruktor aufrufen Allgemeine Java-Themen 12
hdi Ressourcen dynamisch zur Laufzeit laden Allgemeine Java-Themen 15
A Klassen dynamisch aus jar-datei laden Allgemeine Java-Themen 5
J instanceof vermeiden und stattdessen dynamisch binden Allgemeine Java-Themen 6
M Konstruktoraufruf dynamisch auswerten und SQL bauen Allgemeine Java-Themen 10
E Variable dynamisch ausgeben Allgemeine Java-Themen 5
Tandibur pattern dynamisch vorkompilieren Allgemeine Java-Themen 9
T Objekt dynamisch neu erstellen/ austauschen Allgemeine Java-Themen 9
T Dynamisch getypte Klasseninstanz? Allgemeine Java-Themen 6
H getText(); bei dynamisch generierten JTextFiled Allgemeine Java-Themen 2
F Wie erfahre ich dynamisch den namen eines aktuellen Objektes Allgemeine Java-Themen 2
S Asymmetrisches Array dynamisch erzeugen Allgemeine Java-Themen 4
T Objekte dynamisch über eine Methode erzeugen Allgemeine Java-Themen 10
R Object Dynamisch erzeugen (Reflection API) Allgemeine Java-Themen 22
P RTF dynamisch machen (IText, Swing) Allgemeine Java-Themen 4
B Listener dynamisch setzen Allgemeine Java-Themen 6
P Klasse Dynamisch laden und zurückgeben Allgemeine Java-Themen 17
P Array Dynamisch vergrößern Allgemeine Java-Themen 7
B objekt einer klasse dynamisch erzeugen Allgemeine Java-Themen 6
G Objekt dynamisch erstellen und Inhalte kopieren Allgemeine Java-Themen 6
C Dynamisch Objekte unterschiedlicher Typen erzeugen Allgemeine Java-Themen 6
D Klassen dynamisch laden Allgemeine Java-Themen 5
E Arrays -> dynamisch Allgemeine Java-Themen 21
K Methoden dynamisch erstellen Allgemeine Java-Themen 12
P Dynamisch casten - möglich? wie? Allgemeine Java-Themen 5
T Klassen dynamisch ausführen Allgemeine Java-Themen 3
N Graphische Oberfläche dynamisch erweitern möglich? Allgemeine Java-Themen 4
B Absolute Paf einer Klasse in dieser dynamisch auslesen? Allgemeine Java-Themen 5
K Klasse dynamisch casten Allgemeine Java-Themen 14
Reeny Dynamisch Klassen kompilieren Allgemeine Java-Themen 5
G JDO Dynamisch ? Allgemeine Java-Themen 2
H Objekte m. versch. Interf. dynamisch erzeugen Allgemeine Java-Themen 11
E Klasse dynamisch über main-Methode aufrufen Allgemeine Java-Themen 9
D Strings dynamisch füllen Allgemeine Java-Themen 5
A Dynamisch Attribute hinzufügen Allgemeine Java-Themen 3

Ähnliche Java Themen

Neue Themen


Oben