JTree, представляющий граф

Я использую утилиту JTree Swing для представления дерева, которое на самом деле имеет петли. У меня есть один узел с именем root, но некоторые из потомков будут в конечном итоге указывать на другие части дерева, таким образом, не делая его истинным деревом, а скорее графом.

Мое Java-приложение продолжает блокироваться (без исключений, без переполнения стека и т. Д.), Когда я пытаюсь использовать маленькие серые стрелки для расширения и сжатия частей графика.

Мой вопрос заключается в том, требует ли JTree, чтобы ни один из DefaulMutableTreeNodes не содержал цикл?

Если так, то как мы можем представить что-то подобное, используя утилиту JTree? Например, когда вы отлаживаете приложение, скажем, в eclipse, и вы можете бесконечно использовать дерево переменных в режиме отладки, чтобы продолжать просматривать зацикленный объект. Это поведение, которое я ищу.

Какие-либо предложения?

1 ответ

Я не думаю, что проблема в том, что узлы в цикле Jtree сами по себе. Очевидно, у вас есть проблема только с кнопкой "развернуть все", что имеет смысл, потому что метод раскрытия всех будет проходить рекурсивно через узлы, пока у них не будет сыновей.

Jtree по умолчанию не имеет кнопки развернуть все, так что, я думаю, ваша уже настроена...? Мое предложение будет либо удалить кнопку, либо настроить код, чтобы остановить расширение, если findind узел уже был расширен выше в иерархии.

Другие вопросы по тегам