K
Klausi
Gast
Guten Abend, ich stütze mich auf dieses Thema,
http://www.java-forum.org/de/viewtopic.php?t=25221&highlight=jtree+knoten
nur möchte ich , dass beim Anlegen eines neuen Knotens, der erste Kindknoten selektiert wird.
Beim Anlegen werden also immer 2 Nodes erzeugt, wobei der 1. Node immer in den Root kommt an dieses neue Element ein Leaf gehängt wird.
Ich kriege das nicht hin. Außerdem scheint es so, dass wenn ich model.reload() aufrufe, das nicht funktioniert.
mache ich in der Methode addNewElemen nur ein model.insert und lass das model.reload weg, dann geht es. Allerdings sieht der Baum dann komisch aus nach einigen inserts.
Kann mir jemand sagen, wie das erreicht werden kann , dass der Baum beim anlegen zweier Knoten den letzten selektiert `?
http://www.java-forum.org/de/viewtopic.php?t=25221&highlight=jtree+knoten
nur möchte ich , dass beim Anlegen eines neuen Knotens, der erste Kindknoten selektiert wird.
Beim Anlegen werden also immer 2 Nodes erzeugt, wobei der 1. Node immer in den Root kommt an dieses neue Element ein Leaf gehängt wird.
Ich kriege das nicht hin. Außerdem scheint es so, dass wenn ich model.reload() aufrufe, das nicht funktioniert.
mache ich in der Methode addNewElemen nur ein model.insert und lass das model.reload weg, dann geht es. Allerdings sieht der Baum dann komisch aus nach einigen inserts.
Kann mir jemand sagen, wie das erreicht werden kann , dass der Baum beim anlegen zweier Knoten den letzten selektiert `?
Code:
public void addNewElement(CustomerNode customer,CustomerIdNode customerIdnode) throws Exception
{
model.insertNodeInto(customer, this.root, root.getChildCount());
model.insertNodeInto(customerIdnode,customer, customer.getChildCount());
model.reload();
}
Code:
public void treeNodesInserted(TreeModelEvent e)
{
DefaultMutableTreeNode node;
node = (DefaultMutableTreeNode) (e.getTreePath().getLastPathComponent());
int index = e.getChildIndices()[0];
node = (DefaultMutableTreeNode)
(node.getChildAt(index));
TreePath parentpath = e.getTreePath();
TreePath newpath = parentpath.pathByAddingChild(node);
this.setSelectionPath(newpath);
}