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();
		}

	}
}


















+ Recent posts