我有很大的麻煩,加載一個簡單的.gif注意像下面的代碼使用圖片圖標上可以加載一個.gif
package etc_ejmp;
/*
* Fig 21.2 AnimadorLogoJPanel.java
* Animacion de una serie de imagenes*/
import java.awt.Dimension;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.Graphics;
import javax.swing.ImageIcon;
import javax.swing.JPanel;
import javax.swing.Timer;
public class FIG21_2_AnimadorLogoJPanel extends JPanel{
private final static String NOMBRE_IMAGEN ="deitel";// nombre de la imagen
protected ImageIcon imagenes[];// arreglo de imagenes
private final int TOTAL_IMAGENES=30;// numero de imagenes
private int imagenActual =0;// indice de la imagen actual
private final int RETRASO_ANIMACION=50;// retraso en milisegundos
private int anchura;
private int altura;
private Timer temporizadosAnimacion;
public FIG21_2_AnimadorLogoJPanel(){
imagenes = new ImageIcon[TOTAL_IMAGENES];
// carga 30 imagenes
for(int cuenta=0;cuenta<imagenes.length; cuenta++){
imagenes[ cuenta ] = new ImageIcon(getClass().getResource(
NOMBRE_IMAGEN + cuenta + ".gif"));
}
anchura=imagenes[0].getIconWidth();
altura=imagenes[0].getIconHeight();
}
}
我與
imagenes[ cuenta ] = new ImageIcon(getClass().getResource("deitel0.gif")); // nothing
imagenes[ cuenta ] = new ImageIcon(getClass().getResource("deitel.gif")); // nothing
嘗試,但它只能工作巴紐。另外,如果我嘗試使用字符串內部的數字,例如「hello01.gif/.png」--ERROR
錯誤是;
Exception in thread "main" java.lang.NullPointerException at
javax.swing.ImageIcon.<init>(Unknown Source) at
etc_ejmp.FIG21_2_AnimadorLogoJPanel.<init>(FIG21_2_AnimadorLogoJPanel.java:29) at
com.ejercDietel.llamada.llamada_cap21_ejemplos.FIG21_2_AnimadorLogoJPanel(llamada_cap21_ejemplos.java:13) at
com.ejercDietel.llamada.EXECAP21.<init>(EXECAP21.java:9) at
llamadas.CallCap21(llamadas.java:222) at
InicioSistemaPruebas.main(InicioSistemaPruebas.java:67)
我不知道我錯過了什麼,它就像編譯器沒有發現名爲.gif格式也與文件名稱數量圖像。
圖像的名稱是
deitel0.gif
deitel1.gif
deitel10.gif
deitel11.gif
deitel12.gif
deitel13.gif
deitel14.gif
deitel15.gif
deitel16.gif
deitel17.gif
deitel18.gif
deitel19.gif
deitel2.gif
deitel20.gif
deitel21.gif
deitel22.gif
deitel23.gif
deitel24.gif
deitel25.gif
deitel26.gif
deitel27.gif
deitel28.gif
deitel29.gif
deitel3.gif
deitel4.gif
deitel5.gif
deitel6.gif
deitel7.gif
deitel8.gif
deitel9.gif
*「這就像編譯器看不到圖像」*編譯器從不查找圖像。這是必須產生信息的運行時間。 – 2014-08-30 02:03:15
什麼是圖像文件的實際名稱?我不知道你是否需要爲你的字符串做一些填充。 – 2014-08-30 02:03:43
1)順便說一下:在部署時,這些可能會變成一個[tag:embedded-resource],它必須由'URL'而不是'File'來訪問。 2)請參閱[什麼是堆棧跟蹤,以及如何使用它來調試我的應用程序錯誤?](http://stackoverflow.com/q/3988788/418556)&[什麼是NullPointerException,以及如何解決它?](http://stackoverflow.com/q/218384/418556) – 2014-08-30 02:06:40