JTree Drag and Drop

0

Cześć,

Mam pewien problem, może ktos z forum byłby w stanie mi pomóc. Otóz próbuję zrobić drag and drop na JTree. w JTree mam elementy, które należą do mojej własnej klasy i problem jest taki, że jak używam przykładów z tutoriali to tam wszędzie używane jest DefaultMutableTreeNode, a ja zamiast tego mam moja własną klasę i jak zastosowałem ten tutorial:
http://www.java2s.com/Code/Java/Swing-JFC/DnDdraganddropJTreecode.htm

jak uruchomię aplikację i chcę przenieść element w inne miejsce to dostaje exception:
java.lang.ClassCastException: MyClass cannot be cast to javax.swing.tree.DefaultMutableTreeNode.

Problem polega na tym, że np w tym miejscu:

TreePath p = (TreePath) tr.getTransferData(flavors[i]);
DefaultMutableTreeNode node = (DefaultMutableTreeNode) p.getLastPathComponent();

Nie jestem w stanie zrzutować klasy, która znajduje się w drzewie na klasę DefaultMutabletreeNode i nie działa mi drag and drop.

Bardzo proszę o pomoc. Siedzę przy tym trzeci dzień :/

Pozdrawiam
rizon

0

Nie wczytywałem się, ale na moje oko Twoja klasa MyClass powinna rozszerzać DefaultMutableTreeNode.

0

Właśnie chodzi mi o nie uzywanie rozszerzania mojej klasy. Ostatecznie udało mi sie to zrobić używając tego kodu:
http://stackoverflow.com/questions/4588109/drag-and-drop-nodes-in-jtree

Ale mam taki problem teraz, że dostaje NullpointerException jak robie draand drop i nie puszczam na węźle tylko między węzłami. Dostaje Nullpointer w funkcjach wbudowanych np. Vector.java i nie mam możliwości, aby go przechwycić, on się wyrzuca pomimo uzycia try catch... ma ktos może jakis pomysł jak sobie w takiej sytuacji poradzić?

1 użytkowników online, w tym zalogowanych: 0, gości: 1