用JTree.setModel方法import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.tree.*;public class JTreeTestFrame extends JFrame
{
private JTree tree = new JTree(); //默认的树
private JButton btn = new JButton("add");

public JTreeTestFrame()
{
this.setLayout(new BorderLayout());

add(new JScrollPane(tree), BorderLayout.CENTER);
add(btn, BorderLayout.SOUTH);

btn.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent event)
{
DefaultMutableTreeNode root = new DefaultMutableTreeNode("root");
DefaultMutableTreeNode leaf1 = new DefaultMutableTreeNode("leaf1");
DefaultMutableTreeNode leaf2 = new DefaultMutableTreeNode("leaf2");
root.add(leaf1);
root.add(leaf2);

DefaultTreeModel model = new DefaultTreeModel(root);
tree.setModel(model); //重新生成的树
}
});
}

public static void main(String[] args)
{
JFrame frame = new JTreeTestFrame();
frame.setSize(400, 300);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}