Я должен спросить еще раз .. Я не знаю, что я делаю неправильно.
У меня есть «дерево» для моих файлов, которое работает и показывает мне папку моего диска.
Теперь я хочу получить путь к выбранной папке со слушателем и установить / получить методы в другой класс.
Мой слушатель выглядит так:
TreeSelectionListener treeSelectionListener = new TreeSelectionListener() {
public void valueChanged(TreeSelectionEvent tse){
DefaultMutableTreeNode node =
(DefaultMutableTreeNode)tse.getPath().getLastPathComponent();
showChildren(node);
setFileDetails((File)node.getUserObject());
if(node != null)
//System.out.println("Test" + node);
setSelectedNode(NodeForMain);
//NodeForMain = node;
//System.out.println("GetNode" + getSelectedNode());
}
};
А мои методы get и set выглядят так:
public void setSelectedNode(DefaultMutableTreeNode node) {
NodeForMain = node;
//System.out.println("String:" + NodeForMain.toString());
System.out.println("Set:" + NodeForMain);
}
public DefaultMutableTreeNode getSelectedNode() {
System.out.println("Get"+ NodeForMain);
return NodeForMain;
}
Итак, если я отображаю узел с "системой".out.println (..) "в классе дерева, он показывает мне правильный путь.
Но если я собираюсь отобразить путь с помощью методов get в другом классе, он покажет мне "null".
DefaultMutableTreeNode node = FileBrowser.getSelectedNode();
System.out.println("Knoten:" + node);
Я не знаю, что я делаю не так ... Надеюсь, достаточно кода, чтобы понять.