1

からノードを削除しようとしていDefaultTreeModelます。1 つのノードを削除しようとしても、GUI から削除されません。2 つのノードを削除すると、そのうちの 1 つだけが削除されます。

removeNodeFromParent(node);ノードを削除するために使用しています。

誰かがこの問題を手伝ってくれませんか。

4

1 に答える 1

0

メソッドnodesWereRemovedによってトリガーされるイベントをツリーが検出していないようです。removeNodeFromParent(node);

標準DefaultTreeModelJTreeオブジェクトを使用していますか? その場合、削除を行うときに自動的に更新する必要があります。いずれかのクラスのカスタムを作成した場合、おそらくnodesWereRemovedイベントを (カスタムでJTree) 処理していないか、(カスタムで) イベントをトリガーしていませんDefaultTreeModel

標準オブジェクトを使用している場合は、ノードを削除した後にJTree.revalidate();andを呼び出しJTree.repaint();て、モデルの変更から強制的にツリーを再描画してみてください。

最後の提案ですが、代わりに何かremoveXXX()方法を試しましたか?JTree

于 2012-05-23T13:49:23.193 に答える