在JavaFX我有這樣的事情: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);
}
});
的問題是那list
是相當長的,並且最終將centreBox
的高度延伸超過窗口的大小。但是,滾動條永遠不會被觸發。
我試着將滾動條策略設置爲始終,但是酒吧總是保持在100%的高度(即不能移動它們)。基本上問題是,scrollpane似乎並不關心高度centreBox
。
我也嘗試添加一組閱讀一些有關它的API後:
Group group = new Group(scrollPane);
mainHBox.getChildren().add(group);
但仍然沒有喜悅。
我認爲這是與內容是動態生成的事實有關。如果我從一開始就將某些元素硬編碼到那裏,它似乎工作正常。
如何解決這個問題?
在此先感謝
我只是寫了一個簡單的程序測試,並作爲節點添加到它的內容我的ScrollPane正確的行爲。請編輯您的問題並提供一個[MCVE](http://stackoverflow.com/help/mcve)來展示您的問題。 – VGR