比方说,我有一个 jTree 的代码
JTree jTree = new JTree() ;
DefaultMutableTreeNode root = new DefaultMutableTreeNode("root") ;
jTree.setModel( new DefaultTreeModel(root));
DefaultMutableTreeNode firstNode = new DefaultMutableTreeNode("first node") ;
现在我想从 firstNode 变量不可用的地方添加一个叶子到名为“first node”(当前是叶子)的节点中。如何做呢?
澄清: 好的!我在一个类中有一个 JFrame(扩展了 swing),一个 jTree 是这个类的私有(private)成员。现在我将此类对象(作为参数)传递给另一个类方法,其中应该填充 jTree。但是我无法对另一个类方法中的那个 jTree 做任何事情。 (当然访问私有(private)方法不是我的问题:)
最佳答案
试试这个:
firstNode.add(new DefaultMutableTreeNode("leaf node"));
更新:根据您的评论,您必须引用要在其下添加新叶子的节点。如果你正在响应树中的树选择事件,那么你可以通过以下方式获取引用:
DefaultMutableTreeNode firstNode = (DefaultMutableTreeNode)jTree.getSelectionPath().getLastPathComponent();
关于java - 向 jTree 节点添加新叶子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7309331/