0

データがロードされているときにデータを入力する必要がある 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()、ツリーが描画されますが、すべてのノードも折りたたまれます。モデルが変更され、ノードが正しく追加されます。私が見逃しているのは何ですか?

4

0 に答える 0