Main 사이즈 조절
Scene scene = new Scene(root,200,100);
Pane(200, 100)
Button - Code : fx:id - btn
On Action - movePage
또 하나 fxml, second라고 명명해서 만든다.
따로 올릴 때 어려운점이 없다고 생각하므로 바로 코드
주석을 자세히 보자
package app;
import java.io.IOException;
import java.net.URL;
import java.util.ResourceBundle;
import javafx.fxml.FXML;
import javafx.fxml.FXMLLoader;
import javafx.fxml.Initializable;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.stage.Stage;
public class MainController implements Initializable{
@FXML private Button btn;
@Override
public void initialize(URL location, ResourceBundle resources) {
// TODO Auto-generated method stub
}
public void movePage() {
// 새 스테이지 추가
Stage newStage = new Stage();
Stage stage = (Stage)btn.getScene().getWindow();
try {
/*
// 1. 새 스테이지 + 새 레이아웃
// 새 스테이지 생성 -> 새레이아웃 추가 -> 기존 스테이지 닫기
// 새 레이아웃 추가
Parent second = FXMLLoader.load(getClass().getResource("second.fxml"));
// 씬에 레이아웃 추가
Scene sc = new Scene(second);
// 씬을 스테이지에서 상영
newStage.setScene(sc);
newStage.show();
// 기존 페이지 삭제
stage.close();
// stage.hide(); // 닫지 않고 잠시 숨김, .show()를 통해 다시 볼 수 있음
*/
// 2. 기존 스테이지 + 새 레이아웃
/* 새로만든 레이아웃을 기존 스테이지에 띄움 */
Parent second = FXMLLoader.load(getClass().getResource("second.fxml"));
// 씬에 레이아웃 추가
Scene sc = new Scene(second);
stage.setScene(sc);
stage.show();
} catch (IOException e) {
e.printStackTrace();
}
}
}
'JavaFX > 01.Node 추가' 카테고리의 다른 글
| [JAVA FX]01-20.MVC 패턴, 계산기 (0) | 2018.09.13 |
|---|---|
| [JAVA FX]01-19.Stage를 Static을 통해 공유, 레이아웃 겹치기 (1) | 2018.09.12 |
| [JAVA FX]01-17.Popup 띄우기2 (방법2) (0) | 2018.09.12 |
| [JAVA FX]01-16.Popup 띄우기 (방법 1,2) (0) | 2018.09.12 |
| [JAVA FX]01-15.AudioPlayer (0) | 2018.09.12 |