在insertNodeInto之后,JTree不显示更改

时间:2013-12-19 11:37:06

标签: java swing jtree defaulttreemodel

我有一个需要在加载数据时填充的JTree。 我使用DefaultTreeModel

创建树
final DefaultTreeModel treeModel = new DefaultTreeModel(root);
jTree1 = new JTree(treeModel);

其中root是MutableTreeNode实现。 当我需要显示的数据被更改或添加时,会触发一个监听器,该监听器调用

public void exStateAdded(final ExState parent, ExState child) { 
final ExStateTreeNode exStateTreeNode = new ExStateTreeNode(child);
SwingUtilities.invokeLater(new Runnable() {
    @Override
    public void run() {
        treeModel.insertNodeInto(exStateTreeNode, root, root.getChildCount());

    }
});

调试器显示,调用该插入,但树本身不反映更改。如果我调用reload(),则会绘制树,但它也会折叠所有节点。模型正在变化,节点正确添加。我错过了什么?

0 个答案:

没有答案