スポンサーリンク
JavaFXで複数の窓を表示する。
で示したコードの、Fxml1.javaを以下のように書き換える
import javafx.scene.Scene; import javafx.stage.Stage; import javafx.stage.Modality; public class Fxml1 extends Application { public static void main(String[] args) { launch(args); } public Stage newStage = null; @Override public void start(Stage stage) throws Exception { AnchorPane root = FXMLLoader.load(getClass().getResource("sample.fxml")); Scene scene = new Scene(root); stage.setTitle("FXML Test"); stage.setScene(scene); stage.show(); newStage = new Stage(); newStage.initModality(Modality.NONE); newStage.initOwner(stage); newStage.setScene( new Scene(FXMLLoader.load(getClass().getResource("sample.fxml") ) ) ); newStage.show(); } }
新しくStageをnewして、setSceneしてshowするだけ。
途中、initModalityの引数に関しては以下。
http://docs.oracle.com/javafx/2/api/javafx/stage/Modality.html
の三つがある。