Java/javaFX & Scene Builder

5주차 - javaFX HBox

우젼 2022. 9. 5. 20:15

HBox는 내부의 요소를 가로로 정렬한다.

FlowPane 과 다른 점은 화면을 넘어갈때에 아래줄로 넘겨주지 않는 다는 것이다.

public class HboxEx01 extends Application {
	public static void main(String[] args) {
		launch(args);
	}

	@Override
	public void start(Stage primaryStage) throws Exception {
		Pane p1 = new Pane();
		Pane p2 = new Pane();
		Pane p3 = new Pane();
		
		// HBox는 최대 높이를 설정하지 않으면 처음부터 끝까지 채워짐, max는 최대값을 설정할뿐 채우는 값이 아님에도 채워지는 이유가 그것.
	
		p1.setMaxHeight(100);
		p2.setMaxHeight(200);
		p3.setMaxHeight(100);

		p1.setPrefWidth(100);
		p2.setPrefWidth(100);
		p3.setPrefWidth(100);
		
		p1.setStyle("-fx-background-color:red");
		p2.setStyle("-fx-background-color:blue");
		p3.setStyle("-fx-background-color:green");
		
		HBox box = new HBox();
		box.setAlignment(Pos.CENTER);
		box.setPadding(new Insets(50));
		box.setSpacing(10); // 내부 요소 사이에 간격 부여
		box.getChildren().addAll(p1,p2,p3);
		primaryStage.setScene(new Scene(box, 400, 300));
		primaryStage.setTitle("HBoxEx");
		primaryStage.show();
	}
}

위 코드의 실행화면