我试图在运行JApplet时从JAR文件加载PNG图像。
我认为该文件已正确加载-没有错误。
但是,不会显示。 img.png与MainClass.java文件放置在同一目录中。
这是代码:

InputStream imageURL = this.getClass().getResourceAsStream("img.png" );
byte[] bytes = null;
try {
    bytes = new byte[imageURL.available()];
    System.out.println(imageURL.available());
    imageURL.read(bytes);
}
catch(Exception e) {System.out.println("bleah");}

Image image = Toolkit.getDefaultToolkit().createImage(bytes);
Image imageScaled = image.getScaledInstance( 100, 150, Image.SCALE_SMOOTH );
jLabel6 = new javax.swing.JLabel( new ImageIcon( imageScaled) );`


和HTML摘录:

<APPLET codebase="classes" code="myapplet/MainClass.class" archive ="LittleApplet.jar" width=700 height=500></APPLET>


如我所写,该图像可能已读取,但未在JLabel中显示。

我想念/做错了什么?

预先感谢您的答复!

最佳答案

这对我有用:

URL imageURL = this.getClass().getResource("img.png");
Image image = Toolkit.getDefaultToolkit().createImage(imageURL);
Image scaled = image.getScaledInstance(100, 150, Image.SCALE_SMOOTH);
JLabel label = new JLabel(new ImageIcon(scaled));

10-08 08:49