web-dev-qa-db-ja.com

Javafxは、ボタンを使用して別のウィンドウで別のfxmlを開きます

Javafxでは、ボタンを使用して別のfxmlから新しいステージ(ウィンドウ)を開くことはできますか?答えてくれてありがとう。

19
Sevi

ボタンのクリック時に以下のコードを使用します。

try {
    FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("Demo.fxml"));
    Parent root1 = (Parent) fxmlLoader.load();
    Stage stage = new Stage();
    stage.initModality(Modality.APPLICATION_MODAL);
    stage.initStyle(StageStyle.UNDECORATED);
    stage.setTitle("ABC");
    stage.setScene(new Scene(root1));  
    stage.show();
}
45
SimplyMe

コードを少し変更する必要がありましたが、問題なく動作します。コードをありがとうございます!

public void pressButton(ActionEvent event) throws Exception {               
    try {
        FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("/fxml/A.fxml"));
        Parent root1 = (Parent) fxmlLoader.load();
        Stage stage = new Stage();
        stage.setScene(new Scene(root1));  
        stage.show();
    } catch(Exception e) {
        e.printStackTrace();
    }
}
19
Sevi