我试图在运行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));