본문 바로가기

JavaFX

[JavaFX] JavaFX Popup 새 팝업창 띄우기

새로운 Popup창 띄우기

 

JavaFX에서 새 팝업창을 띄우기 위해 새로 띄울 팝업창을 fxml로 만들고 이를 불러와서 새창을 띄우려고 한다.

Popup 객체를 사용하지 않고 새로운 Stage를 만들어서 개발하려 한다.

  • fxml 팝업창 만들기
  • 컨트롤러에서 fxml 파일 로그
  • 버튼 이벤트 발생시 팝업창 호출

 

 

popup.fxml 팝업화면

<AnchorPane fx:controller="PopupController">
  <children>
    <Label text="팝업 화면" />
  </children>
</AnchorPane>

 

 

popup.fxml을 띄울 컨트롤러

  • FXMLLoader 로 fxml 파일을 로드한다.
  • Stage 를 새로 만든다.
  • Scene을 Stage에 매핑한다.
  • stage.show()로 팝업을 호출한다.
@FXML
private void registerAction() {
  try{
    FXMLLoader loader = new FXMLLoader(getClass().getResource("popup.fxml");
    Parent root = (Parent) loader.load();
    Stage stage = new Stage();
    stage.setTitle("popup");
    stage.setScene(new Scene(root));
    stage.show();
  }catch(Exception e) {
  
  }
}

 

 

 

새 팝업창에 데이터 전달하는 방법

 

[JavaFX] JavaFX 새 팝업창에 Parameter 데이터 전송

JavaFX에서 fxml으로 새창을 띄울때 파라미터도 같이 전달할 수 있다. 새 창 fxml 화면 fxml 컨트롤러 생성 후 TextField에 데이터 입력 부모 창에서 fxml 로드 후 파라미터 전송 새 창 popup.fxml 화면을 만든다...

ohtanja.tistory.com