Velocity Reviews

Velocity Reviews (http://www.velocityreviews.com/forums/index.php)
-   Java (http://www.velocityreviews.com/forums/f30-java.html)
-   -   pls help!!unable to add new node under existing parent (http://www.velocityreviews.com/forums/t376297-pls-help-unable-to-add-new-node-under-existing-parent.html)

java4suj 11-16-2006 02:26 PM

pls help!!unable to add new node under existing parent
 
Hi ,

I am trying to build a jtree with input from a arraylist.i need to form
a tree as below

OMCR
|--Shara
| |--AN-01
| |---router-1
| |--AN-02
| |---router-2
|---Merc

The nodes in the array list are in child, parent format.

EX:

Child : Parent
Shara : OMCR
AN-01 : Shara
router-1: AN-01
AN-02:Shara
router-2:AN-02

But i am not bale to add the nodes as required.Below is my code.Can
someone pls help me.Im just a week old in java and have not much idea.

DefaultMutableTreeNode root = new DefaultMutableTreeNode("OMCR");
---
---
---
.....................DefaultTreeModel treeModel = new
DefaultTreeModel( root );
tree = new JTree( treeModel );
........................
public void buildTree( DefaultMutableTreeNode root) {

DefaultMutableTreeNode child, parent,pseudoparent ;
HashMap name2TreeNode = new HashMap();
ArrayList matrix1 = new md().md_arraylist();
String lastchild = null;
TreePath path = new TreePath (root.getPath());
String childName;String parentName;

for(int i = 0; i < matrix1.size();i++){

pseudoparent = new DefaultMutableTreeNode(lastchild);
childName = (String)((ArrayList)matrix1.get(i)).get(0) ;
parentName = (String)((ArrayList)matrix1.get(i)).get(1);
child = new DefaultMutableTreeNode(childName);
parent = new DefaultMutableTreeNode(parentName);
System.out.println(" i : " + i +" from DB parent " + parent + "
child " + child );

if (parentName.equals("OMCR") ){
System.out.println("if 1" + " child is : " + child);
if (root.getIndex(child) == -1){
root.add(child);
lastchild = childName;
pseudoparent = child;
path = new TreePath (child.getPath());

}
}else{
if (!(lastchild.equals(null))) {
if (! (lastchild.equals(parentName))) {
path = new TreePath (parent.getPath());
parent =(DefaultMutableTreeNode)
path.getLastPathComponent();
System.out.println("if 2 last child " + lastchild + "
parent" + parent + " child " + child);
//root.add(parent);
parent.add(child);
lastchild =childName;

}else{
//lastchild equals parent

path = new TreePath (pseudoparent.getPath());


parent =(DefaultMutableTreeNode)
path.getLastPathComponent();


System.out.println("else part" + "last child " + lastchild +
" parent" + parent + " child " + child);
parent.add(child);
lastchild = childName;
}
}
}


} //end of for


All times are GMT. The time now is 08:03 PM.

Powered by vBulletin®. Copyright ©2000 - 2014, vBulletin Solutions, Inc.
SEO by vBSEO ©2010, Crawlability, Inc.