2022. 8. 15. 23:25ㆍ3층 1구역 - 개발의 장/JAVAfx - GUI
1.서론
이전 게시물에서 GridPane에 대해 알아보았다
고찰에서도 이에 관해 간단하게 다뤄보았다.
2022.08.15 - [개발일지/문제의 고찰] - JAVA FX - Pane(컨테이너)의 원리의 대한 고찰(GridPane) (2022-08-15)
JAVA FX - Pane(컨테이너)의 원리의 대한 고찰(GridPane) (2022-08-15)
1. 서론 GridPane를 통해 간단한 로그인화면을 만들어보자. 2.본론 GridPane은 액셀이라고 생각하면 편할 듯 싶다. 위 사진처럼 칸을 나누고 칸마다 label이나 오브젝트를 넣어주거나 칸 자체를 병합하
sukw9512.tistory.com
FlowPane, GridPane에 대한 쓰임도 중요하지만 컨테이너 라는 말을 생각해보는 것도 좋을 것 같다.
왜냐하면 다음에 해볼 Quiz에 그게 확 온다...ㅋㅋㅋㅋ;;;;
2. 본론
간단한 로그인 화면에 버튼 오브젝트를 추가하고 컬러도 한번 넣어보도록 하자.
package layouts_0812;
import javafx.application.Application;
import javafx.geometry.Insets;
import javafx.geometry.Pos;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.PasswordField;
import javafx.scene.control.TextField;
import javafx.scene.layout.FlowPane;
import javafx.scene.layout.GridPane;
import javafx.stage.Stage;
public class GridPaneEx2 extends Application {
public static void main(String[] args) {
launch(args);
}
@Override
public void start(Stage primaryStage) throws Exception {
Label label1 = new Label("아이디");
Label label2 = new Label("비밀번호");
TextField id = new TextField();
PasswordField pw = new PasswordField();
GridPane.setConstraints(label1, 0, 0);
GridPane.setConstraints(label2, 0, 1);
GridPane.setConstraints(id, 1, 0);
GridPane.setConstraints(pw, 1, 1);
GridPane grid = new GridPane();
grid.getChildren().addAll(id, pw, label1, label2);
grid.setVgap(20);
grid.setHgap(40);
grid.setPadding(new Insets(50, 0, 0, 30));
FlowPane flow = new FlowPane();
flow.getChildren().add(new Button("Merge col(0) row(2)"));
//FlowPane의 가로세로 사이즈 설정
flow.setPrefSize(250, 20);
//FlowPane의 바탕색 설정
//red와 같은 default색상도 설정가능하지만
//html색상표를 통해 상세한 색상도 선택가능하다.
//아래는 html색상표를 통한 색표현.
flow.setStyle("-fx-background-color: #6EE3F7");
//오브젝트의 위치 설정
flow.setAlignment(Pos.CENTER);
//add를 사용하여 setConstraints같은 효과를 낼 수 있다.
//grid.add(flow, x축, y축, 가로병합, 세로병합)
//2라는 건 x축에 0과1를 병합한다는 뜻임.
grid.add(flow, 0, 2, 2, 1);
Scene scene = new Scene(grid, 300, 200);
primaryStage.setTitle("GridPaneEx2");
primaryStage.setScene(scene);
primaryStage.show();
}
}
결과를 확인해보자.
3. 결론
이번 GUI는 좀 더 신경 쓸 것이 많아보인다.
그래서 좀 더 원리를 알아보고 공부한 내용을 상세하게 정리하는게 많아지는 거 같다.
그래서 정리한 내용이 중구난방되는 거 같은 느낌적인 느낌...
근데 어쩌겠느냐....
JavaFX를 사용할지 안할지 모르겠으나 '내가 여기서 이것을 몰라 코드에도 주석을 남기고 블로그에도 남겼구나' 의
흔적을 남겨놔야 서재처럼 꺼내볼 수 있을 듯 하다.
'3층 1구역 - 개발의 장 > JAVAfx - GUI' 카테고리의 다른 글
JAVA fx - JAVA fx 컨테이너 - 구역 구분하는 퀴즈 (2022-08-15) (0) | 2022.08.16 |
---|---|
JAVA fx - JAVA fx 컨테이너 - BorderPane (2022-08-15) (0) | 2022.08.15 |
JAVA fx - JAVA fx 컨테이너 - GridPane(2022-08-11) (0) | 2022.08.11 |
JAVA fx - JAVA fx 컨테이너 - FlowPane(2022-08-11) (0) | 2022.08.11 |
JAVA fx - JAVA fx 글자를 중앙에 위치하게 하는 퀴즈(2022-08-11) (0) | 2022.08.11 |