我在代码中想要把tree.setCellEditor(new DefaultCellEditor(new JTextField()){
public boolean stopCellEditing(){
DefaultMutableTreeNode selectedNode = (DefaultMutableTreeNode) tree.getLastSelectedPathComponent();
MyObject obj = new MyObject();
selectedNode.setUserObject(obj);
}
}我想把 selectedNode 的字符串 设置成自己的类MyObject ,但是如果第一次编辑了Jtree的一个结点后,第二次再进来编辑同一个节点 selectedNode.getUserObject() 出来的又是字符串,不是自己刚才setUserObject(obj) 的对象了,好像是在哪里又给覆盖了,请问有谁知道如何解决吗?
public boolean stopCellEditing(){
DefaultMutableTreeNode selectedNode = (DefaultMutableTreeNode) tree.getLastSelectedPathComponent();
MyObject obj = new MyObject();
selectedNode.setUserObject(obj);
}
}我想把 selectedNode 的字符串 设置成自己的类MyObject ,但是如果第一次编辑了Jtree的一个结点后,第二次再进来编辑同一个节点 selectedNode.getUserObject() 出来的又是字符串,不是自己刚才setUserObject(obj) 的对象了,好像是在哪里又给覆盖了,请问有谁知道如何解决吗?
1.初始化树
MyObject classify = new MyObject();
DefaultMutableTreeNode newChild = new DefaultMutableTreeNode(classify);
parentNode.add(newChild);
初始化完后取出来都是MyObject类型这个是对的,但是接下来我要修改树结点的内容,修改后就出现这个问题,就感觉像你说的又进行了第二次实例化,但是我不知道第二次实例化是在什么时候,请大侠再详细指点一下!多谢!