2016-11-17 12 views
1

BorderPaneのサイドメニューをプログラムで追加して削除します。 Nodeを追加すると問題が発生しますが、表示されません。 BorderPaneおよびStackPaneは、FXMLファイルで定義されています。JavaFXを追加してBorderPaneからノードを削除する

は、私はこのような何かをしたい:

StackPane temp = (StackPane) borderPane.getChildren().get(1); 
borderPane.getChildren().remove(1); 
borderPane.getChildren().add(0, temp); 

は私がborderPane.requestLayout()を試してみましたが、それは動作しません。

答えて

0

あなたは現在割り当てられてNodeを取得するために、別の部分にNode Sを追加するsetRightまたはsetLeftsetTopsetBottomsetCenterの方法を使用してもgetRightgetLeftgetTopgetBottomgetCenterことができます。 setメソッドは、nullの値を渡して現在設定されているNodeを削除するためにも使用できます。

例:

あなたは右側に配置StackPaneを持ってBorderPaneを持っている、とあなたが左側に移動することを想像してみてください。

StackPane temp = (StackPane) borderPane.getRight(); // Casting is unnecessary 
borderPane.setRight(null); 
borderPane.setLeft(temp); 
+0

ありがとうございました、これは私が探していたものです。 –

+0

どうすれば 'borderPane.setAligment()'を使用するときにstaticを使用することを勧められますか?私はそのようにノードを配置することを好みました – Lealo

関連する問題