Как поместить представление дерева в область прокрутки и иметь только полосу прокрутки, которая принадлежит области прокрутки

#java #javafx #java-8 #javafx-8 #fxml

#java #javafx #java-8 #javafx-8 #fxml

Вопрос:

     <ScrollPane>
    <content>
        <TreeView fx:id="tree"/>
       </content>
    </ScrollPane>
  

или

     <VBox>
   <children>
   <ScrollPane VBox.vgrow="always">
    <content>
        <TreeView fx:id="tree"/>
       </content>
   </ScrollPane>
   </children>
</VBox>
  

Я хочу поместить компонент treeview в компонент scrollpane. Когда я помещаю много элементов в древовидное изображение, появляется полоса прокрутки древовидного изображения, а полоса прокрутки области прокрутки не имеет своей высоты, которая изменяется (полоса прокрутки области прокрутки отображается благодаря политике полосы прокрутки). Есть ли способ привязать полосу прокрутки области прокрутки к компоненту просмотра дерева?

Комментарии:

1. Вы хотите, чтобы полоса прокрутки области прокрутки стала видимой и доступной вместо полосы прокрутки в виде дерева, когда элементы добавляются в дерево?

2. Могу я спросить, зачем вам это нужно? Обратите внимание, что TreeView не обязательно увеличивается в высоту, когда данных больше, чем места для их отображения; без увеличения высоты ScrollPane не может знать, что ему нужно отображать полосу прокрутки. Но в чем проблема с использованием встроенной функции прокрутки TreeView ?

3. Спасибо за ваши ответы. Мне нужно иметь область прокрутки. На самом деле, я использую перетаскивание, чтобы переместить компонент treeview из одного места в другое (в treeview тоже). Я установил функциональность, которая позволяет автоматически спускаться по области прокрутки, когда компонент помещается за пределы области прокрутки во время операции перетаскивания (компонент еще не удален). Эта операция работает только с областью прокрутки. Я пытался использовать полосу прокрутки древовидного изображения, но это не работает. Операция реализуется благодаря временной шкале, которая изменяет значение полосы прокрутки.