JavaFXで垂直方向にコントロールを配置する方法について記載します。
目次
1. 垂直方向にコントロールを配置する方法
VBoxを使用すると垂直方向にコントロールを配置することができます。
実行例

| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | import javafx.application.Application; import javafx.geometry.Pos; import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.scene.layout.VBox; import javafx.stage.Stage; public class SampleVBox1 extends Application {     @Override     public void start(Stage pStage) throws Exception {         /**          * ボタンの定義          */         Button btn1 = new Button("1");         btn1.setPrefHeight(50);         btn1.setPrefWidth(80);         Button btn2 = new Button("2");         btn2.setPrefHeight(50);         btn2.setPrefWidth(80);         Button btn3 = new Button("3");         btn3.setPrefHeight(50);         btn3.setPrefWidth(80);         /**          * VBoxにボタンを追加          */         VBox vbox = new VBox();         vbox.setAlignment(Pos.CENTER); // VBox内で中央位置に合わせる         vbox.setSpacing(20); // 各コンロール間の垂直方向のスペース         vbox.getChildren().addAll( btn1, btn2, btn3 );         pStage.setTitle("Sample VBox");         pStage.setHeight(300);         pStage.setWidth(200);         pStage.setScene( new Scene( vbox ) );         pStage.show();     }     public static void main(String[] args){         Application.launch(args);     } } | 
1. VBoxにコントロールを追加
VBoxに addAll もしくは add メソッドでコントロールを追加します。
| 1 2 | VBox vbox = new VBox(); vbox.getChildren().addAll( btn1, btn2, btn3 ); | 
2. VBox内のコントロールの位置を設定
setAlignment メソッドを使用すると、VBox内全体でのコントロール位置を設定できます。
| 1 | vbox.setAlignment(Pos.CENTER); | 
3. VBox内のコントロール間のスペースを設定
setSpacing メソッドを使用すると、コントロール間のスペースを設定できます。
| 1 | vbox.setSpacing(20); | 
2. レイアウト一覧
3. 左から右にコントロールを配置する方法(FlowPane)
4. 格子状にコントロールを配置する方法(GridPane)
5. 上下左右中央にコントロールを配置する方法(BorderPane)