G
Gast
Gast
Hallo,
wenn ich eine JTree druchlaufen möchte und in diesem JTree mehrere Nodes herauslöschen möchte, wie kann ich da vorgehen,
ich habe mir eine Enumeration vom JTree erzeugt, mit diesem Enumerator kann ich ja den Tree durchlaufen, aber ich kann keine Nodes löschen,
Mein Problem ist momentan, dass ich eben mit der Enumeration den JTree durchlaufe und mit removeFromParent den Node lösche, nach dem löschen läuft die Enumeration aber nicht mehr weiter bzw. bekomme ich eine Fehlermeldung (NoParentInvocation oder so).
Wie kann man das vernünftig machen?
Dankeschön,
Beste Grüße
wenn ich eine JTree druchlaufen möchte und in diesem JTree mehrere Nodes herauslöschen möchte, wie kann ich da vorgehen,
ich habe mir eine Enumeration vom JTree erzeugt, mit diesem Enumerator kann ich ja den Tree durchlaufen, aber ich kann keine Nodes löschen,
Mein Problem ist momentan, dass ich eben mit der Enumeration den JTree durchlaufe und mit removeFromParent den Node lösche, nach dem löschen läuft die Enumeration aber nicht mehr weiter bzw. bekomme ich eine Fehlermeldung (NoParentInvocation oder so).
Wie kann man das vernünftig machen?
Dankeschön,
Beste Grüße
Code:
Enumeration<DefaultMutableTreeNode> itTree = ((DefaultMutableTreeNode)((DefaultTreeModel)fTree.getModel()).getRoot()).preorderEnumeration();
while(itTree.hasMoreElements()) {
DefaultMutableTreeNode next = itTree.nextElement();
if(next.toString().equals("Identifikation") && next.getFirstLeaf().toString().equals(idToDelete)) {
System.out.println(idToDelete + ", " + next.getParent() + "-------------------------------------------------- ist es dann aus? -------------------------------------------------------------------");
DefaultMutableTreeNode n = (DefaultMutableTreeNode) next.getParent();
((DefaultMutableTreeNode)next.getParent()).removeFromParent();
}
}