加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

获取图像路径JavaFx

发布时间:2020-12-14 23:45:28 所属栏目:Java 来源:网络整理
导读:我想获取我的 Image对象中加载的当前 Image的路径名. 我有以下代码: Image lol = new Image("fxml/images/bilhar9.png"); 我想做的事情如下: lol.getPath(); 应该返回“fxml / images / bilhar9.png”,我发现方法impl_getUrl()但不推荐使用. 我该怎么办?
我想获取我的 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;

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读