JTree, представляющий граф
Я использую утилиту JTree Swing для представления дерева, которое на самом деле имеет петли. У меня есть один узел с именем root, но некоторые из потомков будут в конечном итоге указывать на другие части дерева, таким образом, не делая его истинным деревом, а скорее графом.
Мое Java-приложение продолжает блокироваться (без исключений, без переполнения стека и т. Д.), Когда я пытаюсь использовать маленькие серые стрелки для расширения и сжатия частей графика.
Мой вопрос заключается в том, требует ли JTree, чтобы ни один из DefaulMutableTreeNodes не содержал цикл?
Если так, то как мы можем представить что-то подобное, используя утилиту JTree? Например, когда вы отлаживаете приложение, скажем, в eclipse, и вы можете бесконечно использовать дерево переменных в режиме отладки, чтобы продолжать просматривать зацикленный объект. Это поведение, которое я ищу.
Какие-либо предложения?
1 ответ
Я не думаю, что проблема в том, что узлы в цикле Jtree сами по себе. Очевидно, у вас есть проблема только с кнопкой "развернуть все", что имеет смысл, потому что метод раскрытия всех будет проходить рекурсивно через узлы, пока у них не будет сыновей.
Jtree
по умолчанию не имеет кнопки развернуть все, так что, я думаю, ваша уже настроена...? Мое предложение будет либо удалить кнопку, либо настроить код, чтобы остановить расширение, если findind узел уже был расширен выше в иерархии.