2012-05-23 1 views
0

Я пытаюсь удалить узлы из DefaultTreeModel. Если я попытаюсь удалить один узел, он не будет удален из графического интерфейса. Если я удаляю 2 узла, только один из них удаляется и т. Д.defaultTreeModel узлы удалены все еще показаны в таблице

Я использую removeNodeFromParent(node); для удаления узлов.

Может кто-то, пожалуйста, помогите мне с этой проблемой.

ответ

0

Похоже, что ваше дерево не обнаруживает событие nodesWereRemoved, которое должно быть вызвано методом removeNodeFromParent(node);.

Вы используете стандартные DefaultTreeModel и JTree? Если это так, они должны автоматически обновляться при удалении. Если вы написали обычай какого-либо класса, вы, вероятно, не обрабатываете событие nodesWereRemoved (в своем обычном JTree), или вы не запускаете событие (в вашем обычном DefaultTreeModel).

Если вы используете стандартные объекты, попробуйте позвонить JTree.revalidate(); и JTree.repaint(); после удаления узла, чтобы заставить дерево перекрасить из вашей модели.

Последнее предложение, попробовал ли вы один из removeXXX() методов JTree?

+0

not nodeChanged – mKorbel

 Смежные вопросы

  • Нет связанных вопросов^_^