【问题标题】:Should I create Images folder in netbeans我应该在 netbeans 中创建 Images 文件夹吗
【发布时间】:2013-03-27 12:55:30
【问题描述】:

我正在 netbeans 中开发一个 java 应用程序,以保存图像图标,我应该创建一个新的图像文件夹还是已经创建了一个图像文件夹?

我在项目中创建了一个图片文件夹,用来设置一个图片图标为JFrame,

URL iconURL = this.getClass().getResource("images/images.jpg");

    ImageIcon icon = new ImageIcon(iconURL);
    frame.setIconImage(icon.getImage());

错误

Uncaught error fetching image:
java.lang.NullPointerException
at sun.awt.image.URLImageSource.getConnection(URLImageSource.java:115)
at sun.awt.image.URLImageSource.getDecoder(URLImageSource.java:125)
at sun.awt.image.InputStreamImageSource.doFetch(InputStreamImageSource.java:263)
at sun.awt.image.ImageFetcher.fetchloop(ImageFetcher.java:205)
at sun.awt.image.ImageFetcher.run(ImageFetcher.java:169)

【问题讨论】:

  • 如果它在你的项目中,那么它应该是"images/images.jpg"
  • 改成images/images.jpg后还是报错。

标签: java image swing jframe embedded-resource


【解决方案1】:

不管你有没有创建目录,我都怀疑这个

getResource("images\\images.jpg");

是个问题,您应该将资源路径指定为images/images.jpg(即正斜杠,无论平台如何。斜杠是资源分隔符,不一定指文件系统)

如果没有明确的请求,我不希望 NetBeans 为您做任何事情,因此您应该创建所需的任何文件夹/资源。

【讨论】:

    【解决方案2】:

    这是 Netbeans 遇到的问题之一,一旦您将图像插入 GUI,它总是会尝试从您放置图像的第一个位置查找图像。我建议创建一个图像包以保持清洁,尽量不要从包中移动图像。

    要解决您现在遇到的问题,您可以将图像插入到上一阶段,我相信您的图像与您的课程在同一个包中。

    或者试试这个方法

    setIcon();
    

    您可以像下面这样创建setIcon

    public void setIcon() {
        setIconImage(Toolkit.getDefaultToolkit().getImage(getClass().getResource("images/images.jpg")));
            }
        }
    

    【讨论】:

      猜你喜欢
      • 2020-07-20
      • 2016-08-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-04
      • 2014-04-20
      • 2014-07-27
      相关资源
      最近更新 更多