JavaFX GIF未显示在用户界面中

时间:2017-03-09 09:38:59

标签: java javafx javafx-8 gif

我有一个附加了图像的用户界面,由于某种原因,添加的GIF没有显示在UI中,也没有给出错误。我也创建了一个测试标签,然后显示。只有空白区域而不是gif。这是代码:

import javafx.scene.control.Label;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.scene.layout.GridPane;

import java.io.File;

public class CheckoutGrid extends GridPane {

    private final RefactoredUserInterface UI;
    private ImageView checkoutLoadingGif;

    public CheckoutGrid(RefactoredUserInterface userInterface) {
        this.UI = userInterface;
        this.checkoutLoadingGif = setupLoadingGif("checkoutLoading.gif");
        add(checkoutLoadingGif, 0, 0);
        add(new Label("Test"), 1, 1);
    }

    private ImageView setupLoadingGif(String gifName) {
        ImageView imageView = new ImageView();
        imageView.setImage(new Image(new File(gifName).toURI().toString()));
        imageView.setFitWidth(120);
        imageView.setPreserveRatio(true);
        imageView.setSmooth(true);
        imageView.setCache(true);
        imageView.setVisible(true);
        return imageView;
    }

}

任何帮助都将不胜感激。

编辑: 我改变了以下部分:

imageView.setImage(new Image(new File(gifName).toURI().toString()));

为:

imageView.setImage(new Image(gifName));

并删除了setVisible()参数,它开始工作..但我没有理由。

0 个答案:

没有答案