JTree tree = new JTree();
TreeSelectionModel selectionModel;
//类的构造方法中
selectionModel = tree.getSelectionModel();
tree.setEditable(true);
tree.getCellEditor().addCellEditorListener(new CellEditorListener(){
public void editingStopped(ChangeEvent e) {
CellEditor editor = (CellEditor)e.getSource();
String nodeAfterEditer = (String)editor.getCellEditorValue();
System.out.println("After eidtor:"+nodeAfterEditer );
DefaultMutableTreeNode node = getTreeNode();
System.out.println("Befor editor"+node);
}
//此处自建一方法用于获得修改前的value,其余两方法为实现 CellEditorListener 的方法
public DefaultMutableTreeNode getTreeNode(){
TreePath path = selectionModel.getSelectionPath();
DefaultMutableTreeNode node = (DefaultMutableTreeNode)path.getLastPathComponent();
return node;
}
public void editingCanceled(ChangeEvent e) {
CellEditor editor = (CellEditor)e.getSource();
String s = (String)editor.getCellEditorValue();
System.out.println("editingCanceled:"+s);
}
});
JTree中修改节点
最新推荐文章于 2022-11-03 11:22:55 发布