Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 日食,韩元';你不能导入图像吗?_Java_Eclipse - Fatal编程技术网

Java 日食,韩元';你不能导入图像吗?

Java 日食,韩元';你不能导入图像吗?,java,eclipse,Java,Eclipse,由于某些原因,以下代码未正确导入图像并显示它。如果我把绘图部分注释掉,它就可以工作了。我不明白为什么 import javax.swing.*; import java.awt.*; import java.net.URL; public class BoardBuild extends JPanel{ String picPath = "pictures/"; String[] fileName = {"board.png"}; ClassLoader cl = Bo

由于某些原因,以下代码未正确导入图像并显示它。如果我把绘图部分注释掉,它就可以工作了。我不明白为什么

import javax.swing.*;
import java.awt.*;
import java.net.URL;

public class BoardBuild extends JPanel{
    String picPath = "pictures/";
    String[] fileName = {"board.png"};
    ClassLoader cl = BoardBuild.class.getClassLoader();
    URL imgURL[] = new URL[1];
    Toolkit tk = Toolkit.getDefaultToolkit();
    Image imgBG;
    public BoardBuild() throws Exception {
        for (int x = 0; x < 1; x++)
            imgURL[x] = cl.getResource(picPath + fileName[x]);
        imgBG = tk.createImage(imgURL[0]);
    }
    public void paintComponent(Graphics g) {
        g.drawImage(imgBG, 0, 0, 150,150 , 0, 0,73, 73, this);
    }
}
import javax.swing.*;
导入java.awt.*;
导入java.net.URL;
公共类BoardBuild扩展了JPanel{
字符串picPath=“pictures/”;
字符串[]文件名={“board.png”};
ClassLoader cl=BoardBuild.class.getClassLoader();
URL imgURL[]=新URL[1];
Toolkit tk=Toolkit.getDefaultToolkit();
图像imgBG;
public BoardBuild()引发异常{
对于(int x=0;x<1;x++)
imgURL[x]=cl.getResource(picPath+fileName[x]);
imgBG=tk.createImage(imgURL[0]);
}
公共组件(图形g){
g、 drawImage(imgBG,0,0,150150,0,0,73,73,本);
}
}
由于是Eclipse,图片位于文件夹
workspace\BoardMaskTest\src\pictures
中。 非常感谢您的帮助。

请放在下面:

workspace/BoardMaskTest/pictures/
相应地改变你的道路

不要在
picPath中包含“src”

 String picPath = "/pictures/";

资源取自类路径,在jar中查看7zip或Winzip可以看到:

String picPath = "/pictures/";
此外,图像可以按如下方式加载:

    for (int x = 0; x < 1; x++)
        URL url = getClass(().getResource(picPath + fileName[x]);
        imgBG = ImageIO.read(url);
        InputStream in = getClass(().getResourceAsStream(picPath + fileName[x]);
        imgBG = ImageIO.read(in);
for(int x=0;x<1;x++)
URL=getClass(().getResource(picPath+fileName[x]);
imgBG=ImageIO.read(url);
InputStream in=getClass(().getResourceAsStream(picPath+fileName[x]);
imgBG=图像读取(in);