Morgen alllesamt,
ich verweile mittlerweile 2 Stunden mit einem Problem und hoffe auf eure Ideen.
Also:
Ich habe eine Methode für das Hinzufügen von Knotenpunkten:
Das Problem hierbei ist, dass nur EINMAL ein Knoten an den ROOT gesetzt wird.
Beispieldatensätze:
/node1/node11/child111 // klappt
/node1/node12/child121 // klappt
/node1/child13 // klappt
/node2/child21 // klappt NICHT!
Das merkwürdige ist, dass bei Ausgabe der Childs des Roots alle aufgelistet werden, bzw. die Anzahl stimmt. Ich habe auch schon den Tree neuzeichnen lassen, den ScrollPane, in dem der Tree drin ist auch.
Ich weiß es echt nicht mehr weiter... Ich hoffe auf euer Denken!
ich verweile mittlerweile 2 Stunden mit einem Problem und hoffe auf eure Ideen.
Also:
Ich habe eine Methode für das Hinzufügen von Knotenpunkten:
Java:
public void addNode(String path)
{
// Beispiel: /Node1/Node11/Child111
String paths[] = path.substring(1).split("/");
OPCTreeNode node1 = null;
OPCTreeNode node2 = null;
for ( String name : paths )
{
boolean found = false;
if ( node1 == null )
node1 = treeItemsRoot; // der root des JTree
for ( int i=0; i<node1.getChildCount() && !found; i++ )
{
if ( node1.getChildAt(i).toString().equals(name) )
{
// OPCTreeNode ist eine abgeleitete Klasse von DefaultMutableTreeNode
node1 = (OPCTreeNode) node1.getChildAt(i);
found = true;
}
}
if ( !found )
{
node2 = new OPCTreeNode(name);
node1.add(node2);
node1 = node2;
}
}
treeItems.expandPath(new TreePath(treeItemsRoot));
treeItems.repaint();
}
Das Problem hierbei ist, dass nur EINMAL ein Knoten an den ROOT gesetzt wird.
Beispieldatensätze:
/node1/node11/child111 // klappt
/node1/node12/child121 // klappt
/node1/child13 // klappt
/node2/child21 // klappt NICHT!
Das merkwürdige ist, dass bei Ausgabe der Childs des Roots alle aufgelistet werden, bzw. die Anzahl stimmt. Ich habe auch schon den Tree neuzeichnen lassen, den ScrollPane, in dem der Tree drin ist auch.
Ich weiß es echt nicht mehr weiter... Ich hoffe auf euer Denken!