我正在编写一个Java Applet。我正在使用图像在小程序窗口上显示内容。我有一个单独的文件夹,其中包含所有这些图像。此文件夹不在src或bin文件夹中,而是一个单独的文件夹中。这个文件夹被称为“assets”。在此文件夹中,有一个名为“images”的文件夹。在这个资源文件夹中,我有几个子文件夹。在这些子文件夹中,我有我正在使用的图像。我使用下面列出的方法加载这些图像并将它们显示在屏幕上。该小程序在Eclipse中运行良好。当我尝试将小程序放到网站上时,出现了问题。我已经做了相当多的搜索,但在我尝试的事情中,没有一个能解决我的问题。我扫描图像中的某些像素颜色。下面列出了我用于图像的代码。当我查看我的.jar文件时,我的图像似乎在.jar文件中。(我使用未存档和JD-GUI查看.jar文件)请让我知道我应该做什么。
~Rane
将图像绘制到屏幕上的方法:
loadImg.renderImage("images/walls/lawn.png", xCoord, yCoord, imgWidth, imgHeight, graphics);renderImage方法:
public void renderImage(String path, int x, int y, int width, int height,
Graphics g) {
g.setColor(Color.BLACK);
g.fillRect(x, y, width, height);
g.drawImage(getImage(path), x, y, width, height, applet);
}getImage方法:
public Image getImage(String path) {
Image img;
URL url = null;
try {
url = applet.getDocumentBase();
} catch (Exception e) {
// TODO: handle exception
}
img = applet.getImage(url, path);
return img;
}我的HTML:
<object type="application/x-java-applet" archive="Applet.jar" code="AppletGame.class" width="600" height="600"></object>在众多答案中,有两个对我不起作用:
发布于 2014-12-17 08:09:01
我想通了我的问题。在我的Applet中,我通过扫描图像中的某个像素颜色值来加载游戏地图。在网站上,小应用程序是白色的。在Eclipse中,屏幕显示为我想要的样子。原因是网页上的Java小程序存在安全问题。它会在每次尝试扫描图像时抛出安全异常,因为我使用的是文件。我需要使用URL。我调整了我的代码,现在它在网站上运行良好。
没有你的帮助我不可能做到这些,MadProgrammer。你帮我找到了正确的方向。例如,如果没有您对查看Java控制台的建议,我不可能发现问题所在。谢谢!
~Rane
资料来源:
https://stackoverflow.com/questions/27495414
复制相似问题