2016-09-16 3 views
2

をスクロールすることはありません:のJavaFXスクロール区画は、私がこのような何か持ってJavaFXのでは

button.setOnMouseClicked(event -> { 
    for(Object obj : list) { 
     HBox box = ...; // here I create a box based on obj 
     centreBox.getChildren().add(box); 
    } 
}); 

問題は次のとおりです。

VBox centreBox = new VBox(); 
ScrollPane scrollPane = new ScrollPane(centreBox); 
mainHBox.getChildren().add(scrollPane); 

そして、ユーザーがクリックボタン上を、トリガーますアクションがありますlistがかなり長く、ウィンドウのサイズを超えてcentreBoxの高さが伸びてしまうことになります。ただし、スクロールバーがトリガーされることはありません。

スクロールバーのポリシーを常に設定しようとしましたが、バーは常に高さの100%のままです(移動できません)。基本的に問題は、スクロールペインが高さcentreBoxを気にしないように見えるということです。

私はまた、APIでそれについて何かを読んだ後にグループを追加してみました:

Group group = new Group(scrollPane); 
mainHBox.getChildren().add(group); 

しかし、まだありません喜びを。

これは、コンテンツが動的に生成されることと関係していると思います。私が最初からそこにいくつかの要素をハードコードするなら、それはうまくいくようです。この問題を解決する方法

?事前に

おかげ

+1

私はこれをテストするための簡単なプログラムを書いて、ノードは、そのコンテンツに付加されているように私のScrollPaneが正しく動作します。質問を編集し、問題を示す[MCVE](http://stackoverflow.com/help/mcve)を提供してください。 – VGR

答えて

-1

試してみてください。代わりのScrollPaneの 利用ListViewコントロール。

編集:動的リストの内容とペインを埋めるために :

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

'mainBox'は、TabPaneに座っているTabの内部にあるメインコンテナです。なぜListViewを使うべきなのかわからない...どうしてスクロールペインが期待通りに動かないの? –

+0

これはソリューションの代わりにコメントでなければなりません。 – user3437460

関連する問題