gpt4 book ai didi

Java - 如何访问打包在 applet jar 中的图像

转载 作者:行者123 更新时间:2023-11-29 06:08:55 28 4
gpt4 key购买 nike

我创建了一个 applet jar。该 jar 包含以下文件夹中的图像

com\common\images\red.bmp

现在,我想在 Swing Applet 上显示此图像。

private static final ImageIcon redIndicator = new ImageIcon("com\\common\\images\\red.bmp");

之后,我将 redIndicator 附加到 JPanel,但我看不到这张图片。

有什么建议吗?

=================================编辑========== =============================

private static final ImageIcon marker = loadImage("com/common/images/scale.jpg");

@SuppressWarnings("unused")
private static ImageIcon loadImage(String imagePath) {

BufferedInputStream imgStream = new BufferedInputStream(TpcHandler.class.getResourceAsStream(imagePath));
int count = 0;

if (imgStream != null) {

byte buf[] = new byte[2400];

try {
count = imgStream.read(buf);
} catch (java.io.IOException ioe) {
return null;
} finally {
if (imgStream != null)
try {
imgStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}

if (count <= 0) {
LOGGER.warning("Empty image file: " + imagePath);
return null;
}

return new ImageIcon(Toolkit.getDefaultToolkit().createImage(buf));
} else {
LOGGER.warning("Couldn't find image file: " + imagePath);
return null;
}
}

我收到以下异常

java.io.IOException: Stream closed

在行 count = imgStream.read(buf);

最佳答案

这应该可以解决问题(如果从从同一个 jar 加载的类中调用):

new ImageIcon(getClass().getResource("/com/common/images/red.bmp"))

关于Java - 如何访问打包在 applet jar 中的图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7704126/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com