Как я могу открыть разные сцены в одном окне в Java? - PullRequest
0 голосов
/ 08 сентября 2018

Уважаемые разработчики, у меня есть больше этапов, но когда я открываю любой этап, он показывает следующую картинку внизу, поэтому, пожалуйста, уважаемые разработчики, мне нужно в одном окне, как я могу ее кодировать?


enter image description here

этот код например для открытой сцены

@FXML
    public void btnsaveinvoice() throws IOException {
        Parent root = FXMLLoader.load(getClass().getResource("/FX/saveinvoice.fxml"));
        Scene scene = new Scene(root);
        Stage stage = new Stage();
        stage.initStyle(StageStyle.UNDECORATED);
        stage.setScene(scene);
        stage.setTitle("saveInvoice");
        stage.getIcons().add(new Image(getClass().getResourceAsStream("/image/restlogo.png")));
        stage.show();

    }

и это для открытой кассы продаж 1014 *

@FXML
    public void opensalesinvoice() {
        try {
            FXMLLoader fxmlLoader = new FXMLLoader();
            fxmlLoader.setLocation(getClass().getResource("/FX/salesinterface.fxml"));
            Scene scene = new Scene(fxmlLoader.load());
            Stage stage = new Stage();
            stage.getIcons().add(new Image(getClass().getResourceAsStream("/image/restlogo.png")));
            stage.setTitle("SalesInvoice");
            stage.setScene(scene);

            stage.show();
        } catch (IOException e) {
            Logger logger = Logger.getLogger(getClass().getName());
            logger.log(Level.SEVERE, "Failed to create new Window.", e);
        }
    }

1 Ответ

0 голосов
/ 08 сентября 2018

Вам нужно установить родительский этап для дочернего этапа следующим образом:

childStage.initOwner(parentStage);

EX.

@FXML
public void btnsaveinvoice() throws IOException {
    Parent root = FXMLLoader.load(getClass().getResource("/FX/saveinvoice.fxml"));
    Scene scene = new Scene(root);
    Stage stage = new Stage();
    stage.initStyle(StageStyle.UNDECORATED);
    stage.setScene(scene);
    stage.setTitle("saveInvoice");
    stage.iniOwner(primaryStage); // or whatever your primaryStage is
    stage.getIcons().add(new Image(getClass().getResourceAsStream("/image/restlogo.png")));
    stage.show();

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...