JavaFXScrollPane从不滚动

JavaFXScrollPane从不滚动,java,javafx-8,Java,Javafx 8,在JavaFX中,我有如下内容: VBox centreBox = new VBox(); ScrollPane scrollPane = new ScrollPane(centreBox); mainHBox.getChildren().add(scrollPane); 然后,当用户单击按钮时,会触发一个操作: button.setOnMouseClicked(event -> { for(Object obj : list) { HBox box = ...;

在JavaFX中,我有如下内容:

VBox centreBox = new VBox();
ScrollPane scrollPane = new ScrollPane(centreBox);
mainHBox.getChildren().add(scrollPane);
然后,当用户单击按钮时,会触发一个操作:

button.setOnMouseClicked(event -> {
    for(Object obj : list) {
        HBox box = ...; // here I create a box based on obj
        centreBox.getChildren().add(box);
    }
});
问题是
列表
相当长,最终将
中心盒的高度扩展到窗口大小之外。但是,滚动条永远不会被触发

我尝试将滚动条策略设置为“始终”,但滚动条始终保持100%的高度(即无法移动)。基本上,问题在于滚动窗格似乎并不关心centreBox的高度

在API上阅读了一些相关内容后,我还尝试添加一个组:

Group group = new Group(scrollPane);
mainHBox.getChildren().add(group);
但仍然没有快乐

我认为这与内容是动态生成的这一事实有关。如果我从一开始就将一些元素硬编码到那里,它似乎可以正常工作

如何解决这个问题

提前感谢

试试: 使用ListView而不是ScrollPane

编辑: 要使用列表的内容动态填充窗格,请执行以下操作:

HBox box[obj] = ...; // here I create a box based on obj
尝试: 使用ListView而不是ScrollPane

编辑: 要使用列表的内容动态填充窗格,请执行以下操作:

HBox box[obj] = ...; // here I create a box based on obj

mainBox
是位于选项卡内的主容器,选项卡位于选项卡窗格中。不确定为什么我应该使用
列表视图
。。。为什么滚动窗格不能按预期工作?这应该是一个注释而不是解决方案。
mainBox
是位于选项卡内的主容器,位于选项卡窗格中。不确定为什么我应该使用
列表视图
。。。为什么滚动窗格不能按预期工作?这应该是一个注释而不是解决方案。我刚刚编写了一个简单的程序来测试这一点,当节点添加到滚动窗格的内容中时,我的滚动窗格可以正常工作。请编辑您的问题并提供一个演示您的问题的示例。我刚刚编写了一个简单的程序来测试这个问题,当节点添加到滚动窗格的内容中时,我的滚动窗格可以正常工作。请编辑您的问题并提供一个演示您的问题的示例。