• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 382
  • Last Modified:

Problem of Creating JTree with Hashtable ?

hi,

Currently I'm facing a problem with the node order of the JTree generated from the Hashtable. The order in which objects are added to a Hashtable exhibit an unpredictable node order. It seems that there has no correlation to the manner in which the objects are stored in the Hashtable.

eg. the order to put a object into the Hashtable.

Hashtable ht = new Hashtable();
   ht.put("Page 1", page1Vector);
   ht.put("Page 2", page2Vector);

JTree jt = new JTree(ht);  

The node order of the JTree might be "Page 2" as a first node and "Page 1" as a second node which is not in the desired order.

Is there any way to solve the ordering problem or sorting the Hashtable ?

Hope to hear from you soon, thank you.
0
andric
Asked:
andric
1 Solution
 
lyonstCommented:
Hi,

I'm not sure if this helps but it is an example of how to load a Hashtable form SUN - there dosn't appear to be a specific sort order but could you use the integer value to loop and read the values in the correct sequence?.


This example creates a hashtable of numbers. It uses the names of the numbers as keys:

          Hashtable numbers = new Hashtable();
          numbers.put("one", new Integer(1));
          numbers.put("two", new Integer(2));
          numbers.put("three", new Integer(3));
     

To retrieve a number, use the following code:

          Integer n = (Integer)numbers.get("two");
          if (n != null) {
              System.out.println("two = " + n);
          }

T.
0
 
ovidiucraciunCommented:
>>The node order of the JTree might
>>be "Page 2" as a first node and "Page
>>1" as a second node which is not in
>>the desired order

That means you should insert like this
Hashtable ht = new Hashtable();
   ht.put("Page 2", page2Vector);
   ht.put("Page 1", page1Vector);



0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Keep up with what's happening at Experts Exchange!

Sign up to receive Decoded, a new monthly digest with product updates, feature release info, continuing education opportunities, and more.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now