Я хочу построить древовидную структуру для моего Java-приложения. Я пытался использовать такие библиотеки, как Prefuse и Jung, но, похоже, они (по крайней мере, легко) не позволяют мне динамически расширять деревья в зависимости от выбора пользователя.
Например, вот начальное дерево:
Branch
Branch
Root -> Branch
Branch
Branch
Теперь пользователь может выбрать любую из этих ветвей для расширения. Суть в том, что результаты нажатия на ветку необходимо обрабатывать во время выполнения. Поэтому после нажатия на первую ветку и моей обработки я хочу обновить дерево, чтобы оно выглядело следующим образом:
Branch
Branch
Branch -> Branch
Branch
Root -> Branch
Branch
Branch
Это может происходить неограниченное количество раз (если доступно пространство).
В моих исследованиях я обнаружил, что графические библиотеки, подобные перечисленным выше, слишком сложны для этой (на первый взгляд, простой) задачи. Кроме того, я хотел бы избежать JTree, поскольку он не соответствует моему мнению об этом проекте.
Мое идеальное решение - это некоторый тип пользовательского дерева, которое дает вид этого образца префузии , но с простотой использования простой древовидной структуры (например, JTree).
Любые идеи и предложения приветствуются и приветствуются. Спасибо за чтение.