3
votes

I have a scrollpane on my screen and a vbox inside it. I add numerous checkboxes in this vbox (and I see it expanding) but the scrollpane doesn't seem to know that it should start showing a scrollbar when the content exceeds the height of that pane. I already tried changing the scrollbar policy but it just shows a scrollbar, I can't actually scroll. How do I fix this?

private void addCheckbox(String checkbox){
        CheckBox c = new CheckBox(checkbox);
        c.setPadding(this.paddingCheckBoxes);
        c.setSelected(true);
        this.vBoxFilters.getChildren().add(c);
    }

Here's the fxml:

<StackPane>
     <children>
          <ScrollPane fx:id="scrollPaneFilters" prefHeight="878.0" prefWidth="260.0">
            <content>
              <VBox fx:id="vBoxFilters" minHeight="0.0" minWidth="0.0" prefHeight="200.0" prefWidth="200.0" />
            </content>
          </ScrollPane>
     </children>
  </StackPane>

enter image description here

2

2 Answers

11
votes

Try to remove prefHeight for VBox in your fxml

3
votes

For others who are searching for the same question, the same problem can occur if you put the VBox inside an AnchorPane inside the ScrollPane. This will happen in SceneBuilder if you use "Scroll Pane" instead of "Scroll Pane (empty)".