Изображения с JavaFX не отображаются - PullRequest
0 голосов
/ 27 октября 2019

Я довольно новый Java, и этот класс проходит через JavaFX. Прямо сейчас это нормально, пока я не вставлю простой образ. Основное тело появляется, но изображение не появляется. Вот мой пример. Я попытался поместить изображение в разных местах, и оно все еще не работает. Я не совсем понимаю, как ввести изображение в JavaFX. Спасибо, Рид.

package chapter14;

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.layout.HBox;
import javafx.scene.layout.Pane;
import javafx.geometry.Insets;
import javafx.stage.Stage;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;

public class ShowImage extends Application {

    @Override 
    public void start(Stage primaryStage) {

        Pane pane = new HBox(10);
        pane.setPadding(new Insets(5, 5, 5, 5));
        //Image image = new Image("file:Testing/Listing_14/src/listing_14            /Listing/image/th.gif");   //Testing
        Image image = new Image("file:image/th.gif");
        pane.getChildren().add(new ImageView(image));

        ImageView imageView2 = new ImageView(image);
        imageView2.setFitHeight(100);
        imageView2.setFitWidth(100);
        pane.getChildren().add(imageView2);   

        ImageView imageView3 = new ImageView(image);
        imageView3.setRotate(90);
        pane.getChildren().add(imageView3);     

        // Create a scene and place it in the stage
        Scene scene = new Scene(pane);
        primaryStage.setTitle("ShowImage"); // Set the stage title
        primaryStage.setScene(scene); // Place the scene in the stage
        primaryStage.show(); // Display the stage
    }

public static void main(String[] args) {
    launch(args);
}

}

Ответы [ 3 ]

0 голосов
/ 27 октября 2019

Ваш код работает нормально. Думаю, это просто проблема с путями. Структура вашего проекта должна быть такой:

Project
|------image
        |-----th.gif
|------src
        |-----chapter14
               |---------ShowImage.java
0 голосов
/ 27 октября 2019

Это должно работать, когда th.gif находится в той же папке, что и код Java:

URL url = Images.class.getResource("th.gif");
Image imageFromSourceFolder = new Image(url.openStream());
ImageView view = new ImageView(imageFromSourceFolder);
0 голосов
/ 27 октября 2019

Вы должны попробовать:

    File file = new File("YourFilePath/Image.png");
    Image image = new Image(file.toURI().toString());

Вместо:

    Image image = new Image("file:image/th.gif");

Я думаю, что это может решить проблему, в противном случае вы должны больше посмотреть на то, что действительно является проблемой.

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