首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何才能找到ImageIcon所需的图像的ImageIcon?

如何才能找到ImageIcon所需的图像的ImageIcon?
EN

Stack Overflow用户
提问于 2020-03-09 17:21:23
回答 1查看 167关注 0票数 2

我正在尝试将一个ImageIcon添加到一个JLabel中,我要添加到一个JPanel中,以便为我的Java游戏获取图形。但是,我甚至不能用我当前的代码为ImageIcon创建JLabel。我已经试过查看堆栈溢出,但我找不到一个适合我的问题的答案。请帮帮忙

代码语言:javascript
复制
protected ImageIcon createImageIcon(Class c, String file) {
        File f = new File(file);
        String path = f.getAbsolutePath();
        
        java.net.URL imgURL = c.getResource(path);
        
        System.out.println(imgURL);
        System.out.println(path);
        
        if (path != null) {
            return new ImageIcon(path);
        } else {
            System.err.println("Couldn't find file: " + path);
            return null;
        }
    }

打电话来:

代码语言:javascript
复制
Graphic startScreenG = new Graphic();
        Icon startScreenI = startScreenG.createImageIcon(MyAppClass, "download.jpg");
        JLabel startScreen = new JLabel(startScreenI);
        Screen.add(startScreen);

这将返回:

为空

C:\Users*justmyname*\Documents\NetBeansProjects\IA\download.jpg

EN

回答 1

Stack Overflow用户

发布于 2020-03-09 18:10:13

注意,getResource按名称而不是文件路径工作。因此,要使c.getResource(path)按您的意愿工作,"download.jpg“文件需要在类路径IIRC中。但是,由于您已经有了一个表示所需的图像文件的File对象,所以只需调用f.toURI().toURL()注意到f.toURL()就不受欢迎了。

希望能帮上忙!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60605503

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档