获取图像路径JavaFx

前端之家收集整理的这篇文章主要介绍了获取图像路径JavaFx前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想获取我的 Image对象中加载的当前 Image的路径名.

我有以下代码

Image lol = new Image("fxml/images/bilhar9.png");

我想做的事情如下:

lol.getPath();

应该返回“fxml / images / bilhar9.png”,我发现方法impl_getUrl()但不推荐使用.

我该怎么办?

解决方法

您无法通过未弃用的API从映像获取映像路径,因为Java 8中不存在此类API.您可以使用已弃用的API,并在删除已弃用的API时在将来的Java版本中破坏应用程序的风险 – 这是不可取的.您可以 create a feature request使getURL()成为图像上的公共API,但是不能保证会被接受,即使它是,它也只能在以后的Java版本中使用它.

图像不是最终的,所以我建议如下:

class LocatedImage extends Image {
    private final String url;

    public LocatedImage(String url) {
        super(url);
        this.url = url;
    }

    public String getURL() {
        return url;
    }
}

像这样创建你的图像:

Image image = new LocatedImage("fxml/images/bilhar9.png");

然后你可以通过以下方式访问网址:

String url = image instanceof LocatedImage 
        ? ((LocatedImage) image).getURL() 
        : null;

不是一个很好的解决方案,但可能足以满足您的需求.

猜你在找的Java相关文章