からノードを削除しようとしていDefaultTreeModel
ます。1 つのノードを削除しようとしても、GUI から削除されません。2 つのノードを削除すると、そのうちの 1 つだけが削除されます。
removeNodeFromParent(node);
ノードを削除するために使用しています。
誰かがこの問題を手伝ってくれませんか。
メソッドnodesWereRemoved
によってトリガーされるイベントをツリーが検出していないようです。removeNodeFromParent(node);
標準DefaultTreeModel
とJTree
オブジェクトを使用していますか? その場合、削除を行うときに自動的に更新する必要があります。いずれかのクラスのカスタムを作成した場合、おそらくnodesWereRemoved
イベントを (カスタムでJTree
) 処理していないか、(カスタムで) イベントをトリガーしていませんDefaultTreeModel
。
標準オブジェクトを使用している場合は、ノードを削除した後にJTree.revalidate();
andを呼び出しJTree.repaint();
て、モデルの変更から強制的にツリーを再描画してみてください。
最後の提案ですが、代わりに何かremoveXXX()
方法を試しましたか?JTree