Как реализовать многоуровневое «дерево выбора» в Swing?(Или: есть ли существующая реализация?) - PullRequest
1 голос
/ 10 июня 2010

Мне нужен компонент Swing, который позволит мне отображать древовидный список элементов и позволять пользователю выбирать или отменять выбор произвольного подмножества этих элементов с возможностью выбирать или отменять выбор стоимости всего поддерева.компоненты, выбирая родителя этого поддерева.(По сути, что-то похожее на диалоговое окно Eclipse «Export JAR-файл» (изображение соответствующего диалога здесь - я в основном хочу компонент «Выбор ресурсов для экспорта», но для приложения Swing.)

альтернативный текст http://i40.tinypic.com/6ylbvr.jpg

Я знаю, что могу сделать это, создав собственный TreeCellRenderer, TreeCellEditor и TreeModel, но это похоже на огромную работу.хорошие готовые реализации, которые я могу использовать?

Спасибо!

Ответы [ 3 ]

2 голосов
/ 10 июня 2010

Вы также можете взглянуть на JIDE компоненты , чтобы увидеть, есть ли у них что-то подобное.

1 голос
/ 10 июня 2010

Я бы рассмотрел NetBeans Outline. Поскольку оно происходит от JTable, вы можете указать несколько вариантов выбора, которые включают поддеревья и конечные узлы.

outline.getSelectionModel().setSelectionMode(
    ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);

Приложение: Глядя на свою фотографию, вы можете использовать CheckRenderDataProvider.

1 голос
/ 10 июня 2010

Похоже, вы говорите о JTree.Обычно он используется для отображения иерархических данных, таких как файловая структура, но может быть изменен для других целей.

http://java.sun.com/docs/books/tutorial/uiswing/components/tree.html

http://java.sun.com/javase/6/docs/api/javax/swing/JTree.html

...