[java] JavaFX 레이아웃 매니저 및 화면 배치

JavaFX는 다양한 레이아웃 매니저를 제공하여 UI 요소를 화면에 배치하는 것을 도와줍니다. 이 블로그 포스트에서는 주요한 레이아웃 매니저와 이들을 사용하여 화면 배치하는 방법에 대해 알아보겠습니다.

1. VBox와 HBox

VBox는 세로로 UI 요소를 배치하는 레이아웃 매니저입니다. HBox는 가로로 UI 요소를 배치하는 레이아웃 매니저입니다. 이들은 주로 단순한 컨테이너 요소의 배치에 사용됩니다.

VBox vbox = new VBox();
HBox hbox = new HBox();

vbox.getChildren().add(new Button("버튼 1"));
vbox.getChildren().add(new Button("버튼 2"));

hbox.getChildren().add(new TextField());
hbox.getChildren().add(new Label("라벨"));

2. GridPane

GridPane은 행과 열에 따라 UI 요소를 배치하는 유연한 레이아웃 매니저입니다. 이 매니저를 사용하면 UI 요소를 그리드 형태로 배치할 수 있습니다.

GridPane gridPane = new GridPane();

gridPane.add(new Button("버튼 1"), 0, 0);
gridPane.add(new Button("버튼 2"), 1, 0);
gridPane.add(new Button("버튼 3"), 0, 1);
gridPane.add(new Button("버튼 4"), 1, 1);

3. BorderPane

BorderPane은 중앙에 주요 UI 요소를 배치하고, 위, 아래, 왼쪽, 오른쪽에 추가적인 UI 요소를 배치하는 레이아웃 매니저입니다. 이 매니저를 사용하면 UI 요소를 효과적으로 배치할 수 있습니다.

BorderPane borderPane = new BorderPane();

borderPane.setTop(new Label("상단"));
borderPane.setBottom(new Label("하단"));
borderPane.setLeft(new Button("왼쪽"));
borderPane.setRight(new Button("오른쪽"));
borderPane.setCenter(new Button("중앙"));

4. AnchorPane

AnchorPane은 UI 요소를 상대적인 위치에 배치하는 레이아웃 매니저입니다. 이 매니저를 사용하면 화면에서 UI 요소의 정확한 위치를 지정할 수 있습니다.

AnchorPane anchorPane = new AnchorPane();

Button button = new Button("버튼");
AnchorPane.setTopAnchor(button, 10.0);
AnchorPane.setLeftAnchor(button, 10.0);

anchorPane.getChildren().add(button);

결론

JavaFX는 다양한 레이아웃 매니저를 제공하여 UI 요소를 유연하게 화면에 배치할 수 있습니다. 이번 블로그 포스트에서는 VBox, HBox, GridPane, BorderPane, AnchorPane 등의 주요한 레이아웃 매니저를 알아보았습니다. 이제쯤이면 JavaFX를 사용하여 효과적인 화면 배치를 할 수 있게 되었을 겁니다.

더 자세한 정보는 JavaFX documentation를 참조하세요.