java在读取gif图片的时候,方式多种,最近项目中用到了applet,applet需要把图片都放在src目录下打包。
最先在尝试使用ImageIO.read(this.getClass().getResourceAsStream("t.gif")); 然后new ImageIcon(Image image);
gif图片只加载了第一侦,原因是上面的方式读取出来的是BuffferedImage形式,在赋予JLabel等组件时无法显示动画。
搜寻一阵,发现使用 this.getClass().getResource("t.gif")即可,这次返回的时URL。即可new ImageIcon(URL url)。
JFrame frame = new JFrame();
frame.setSize(800, 600);
JPanel panel = new JPanel();
JLabel jLabel = new JLabel();
jLabel.setIcon(new ImageIcon(this.getClass().getResource("t.gif")));
panel.add(jLabel);
frame.add(panel);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
附上简短代码,希望对需要的人有帮助。