Как добавить изображение на экран, когда root уже определено - Java FXML - PullRequest
0 голосов
/ 01 мая 2020

Я пытаюсь вывести изображение на экран. Я мог бы сделать это, используя документ F XML, который прост, но на самом деле мне нужно иметь возможность изменять изображение при нажатии кнопки, поэтому я не знаю, как это сделать с F XML

 public void start(Stage stage) throws Exception {
        //FileInputStream input = new FileInputStream("calibre/Books/1.png");
        Image image = new Image("/calibre/Books/1.png");
        GridPane gridpane = new GridPane();
        HBox hBox = new HBox();
        gridpane.setPadding(new Insets(5));
        gridpane.setHgap(10);
        gridpane.setVgap(10);
        ImageView imageView = new ImageView(image);
        imageView.setCache(true);
        imageView.setX(0);
        imageView.setY(0);

        hBox.getChildren().add(imageView);
        gridpane.add(hBox, 1, 1);
        Parent root = FXMLLoader.load(getClass().getResource("FXMLDocument.fxml"));
        root.setId("pane");
        root.getChildren().add(gridpane);
        Scene scene = new Scene(root);
        stage.setScene(scene);
        scene.getStylesheets().addAll(this.getClass().getResource("style.css").toExternalForm());
        Rectangle2D primaryScreenBounds = Screen.getPrimary().getVisualBounds();
        //Set Stage Boundaries to visible bounds of the main screen
        stage.setX(primaryScreenBounds.getMinX());
        stage.setY(primaryScreenBounds.getMinY());
        stage.setWidth(primaryScreenBounds.getWidth());
        stage.setHeight(primaryScreenBounds.getHeight());
        stage.show();
    }

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        launch(args);
    }

Это мой код атм. Из того, что я исследовал, я знаю, что не могу добавить это к детям, которые нельзя изменить. Это просто заполнитель, пока я его не заработаю. Мне не нужно специально использовать сетку или что-то подобное, пока я могу отображать изображение.

С уважением

...