1
我正在尝试创建一个JTree,稍后我可以进行编辑。到目前为止,我有以下代码生成与根节点预期的树。但是,当点击按钮(触发动作侦听器)时,它会在根节点下添加另一个节点。我宁愿它做的是修改根节点。无论如何要做到这一点?我试图改变各种论点;像一个0到-1,(MutableTreeNode)treeModel.getRoot()到(MutableTreeNode)treeModel等。JTree编辑根节点?
感谢您的任何帮助。
//Set first as Defualt Node
final DefaultMutableTreeNode rootNode = new DefaultMutableTreeNode("You must log in first.");
final DefaultTreeModel treeModel = new DefaultTreeModel(rootNode);
tree_folderList = new JTree(treeModel);
tree_folderList.setEditable(true);
tree_folderList.setBorder(new BevelBorder(BevelBorder.LOWERED));
treescrollPane = new JScrollPane(tree_folderList);
tree_folderList.getSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION);
tree_folderList.setShowsRootHandles(true);
//treeModel.addTreeModelListener(new MyTreeModelListener());
ActionListener btn_RefreshMail_Listener = new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
if (sessionkey == null || sessionkey.contains("Invalid")) {
treeModel.insertNodeInto(new DefaultMutableTreeNode("Must be logged in first."), (MutableTreeNode) treeModel.getRoot(), 0);
}
else {
//txt_folderList.setText(DMD.getInbox(sessionkey));
treeModel.insertNodeInto(new DefaultMutableTreeNode("Logged in."), rootNode, 0);
}
}
};
是同一个问题蒙山从代码[Oracle官方教程如何使用树 - 动态调整树(http://docs.oracle.com/javase/tutorial/uiswing/components/tree.html#动态) – mKorbel
是的,我遵循该教程。但是,它们不包括如何设置根节点。 – Kyle