Java 如何在eclipse中将图像添加到项目目录中?
我有一个在eclipse中运行并且不会抛出运行时错误的程序,它应该在程序的末尾为JButton设置一个映像,但是映像永远不会被放到按钮上。这个程序在DrJava中运行得很好,但为了生成一个jar文件,我转移到了eclipse 我在发布的另一个问题中看到,有人有一个类似的问题,说图像应该放在项目目录而不是src目录中,但它没有解释如何实际解决这个问题。。。我是eclipse的新手,如果有人能帮我,我会很感激的,谢谢 以下是如何在“我的代码”中设置图像:Java 如何在eclipse中将图像添加到项目目录中?,java,eclipse,image,jar,directory,Java,Eclipse,Image,Jar,Directory,我有一个在eclipse中运行并且不会抛出运行时错误的程序,它应该在程序的末尾为JButton设置一个映像,但是映像永远不会被放到按钮上。这个程序在DrJava中运行得很好,但为了生成一个jar文件,我转移到了eclipse 我在发布的另一个问题中看到,有人有一个类似的问题,说图像应该放在项目目录而不是src目录中,但它没有解释如何实际解决这个问题。。。我是eclipse的新手,如果有人能帮我,我会很感激的,谢谢 以下是如何在“我的代码”中设置图像: public void tempSelect
public void tempSelection70 (int fRate, int wbTemp, int rcTons, int a, int r)
{
for (int model = 0; model < 7; model++)
{
MyArray y = new MyArray(tons70FCharts[model], "t");
int[][] x = y.getArray();
int t = x[a][r];
if (rcTons == t)
{
tableButton = new JButton(new ImageIcon(tablesFor70[model], tablesFor70[model]));
break;
}
else
{
tableButton = new JButton(new ImageIcon("CANNOT_FIND_MODEL.GIF", "SCROLL"));
}
}
for (int model = 0; model < 7; model++)
{
MyArray y = new MyArray(flow70FCharts[model], "f");
int[][] x = y.getArray();
int t = x[a][r];
if (fRate == t)
{
tableButton = new JButton(new ImageIcon(tablesFor70[model], tablesFor70[model]));
break;
}
else
{
tableButton = new JButton(new ImageIcon("CANNOT_FIND_MODEL.GIF", "SCROLL"));
}
}
}
您正在传递一个文件名作为参数。我猜这个文件名是一个相对的文件名。因此,该文件相对于IDE启动java命令以执行应用程序的目录:工作目录 此目录可以从Eclipse中的运行配置更改,位于选项卡参数下。但这可能不是你想要的。图标当然应该与应用程序捆绑在一起,并与类加载器一起加载。将它们放在源文件夹的包下。Eclipse将把它们与编译的类一起复制到输出目录。如果你为你的应用程序生成了一个jhar,它们将与你的类捆绑在jar中。完成后,您只需使用以URL为参数的构造函数,并传递
SomeClassOfYourApp.getResource("/the/package/of/the/image.png")
与此URL参数相同
这将使您可以轻松地将图标与应用程序捆绑在一起,并且无论工作目录是什么,都可以加载图标。显示代码和项目的布局。您想要的是主类还是添加图标的类image@JBNizet我添加了一段代码来添加图像