Есть ли способ иметь значки расширения для нескольких корней в JTree? - PullRequest
8 голосов
/ 12 января 2009

У меня есть JTree с несколькими «корнями» (Конечно, у меня действительно есть невидимый настоящий корень с несколькими дочерними элементами).

Узлы расширяются и сворачиваются при двойном щелчке, но визуальной индикации того, что вы можете это сделать, нет, поскольку значок расширителя отсутствует.

Это усугубляется тем фактом, что дерево по умолчанию свернуто, но расширение «корней» не очень помогает, так как у каждого есть много дочерних элементов, и это будет выглядеть загроможденным.

Есть ли способ отобразить значки расширителя без , делающего видимым настоящий (и совершенно бесполезный) корень?

Любые другие предложения, чтобы сделать дисплей более понятным.

1 Ответ

15 голосов
/ 12 января 2009

Был бы tree.setShowsRootHandles(true) хорошим хорошим способом отображения этих "значков расширения"?

Дерево, как правило, также выполняет некоторую рисование, ориентированное на внешний вид и взаимодействие между узлами. Вы можете настроить эту картину ограниченным образом.

  • Во-первых, вы можете использовать tree.setRootVisible(true), чтобы показать корневой узел или tree.setRootVisible (false), чтобы скрыть его.
  • Во-вторых, вы можете использовать tree.setShowsRootHandles(true), чтобы запросить, чтобы у узлов верхнего уровня дерева - корневого узла (если он виден) или его дочерних элементов (если нет) - были дескрипторы, позволяющие их развернуть или свернуть. .

Проверьте также ваш внешний вид , чтобы быть уверенным в том, что визуализатор делает с вашим деревом.

...