Los objetos Graphics pueden mostrar imágenes a través del método:
drawImage( Image img,int x,int y,ImageObserver observador );
Hay que tener en cuenta que el método drawImage() necesita un objeto Image y un objeto ImageObserver. Podemos cargar una imagen desde un fichero de dibujo (actualmente sólo se soportan formatos GIF y JPEG) con el método getImage():
Image img = getImage( getDocumentBase(),"fichero.gif" );
La forma de invocar al método getImage() es indicando un URL donde se encuentre el fichero que contiene la imagen que queremos presentar y el nombre de ese fichero:
getImage( URL directorioImagen,String ficheroImagen );
Un URL común para el método getImage() es el directorio donde está el fichero HTML. Se puede acceder a esa localización a través del método getDocumentBase() de la clase Applet, como ya se ha indicado.
Normalmente, se realiza el getImage() en el método init() del applet y se muestra la imagen cargada en el método paint(), tal como se muestra en el ejemplo siguiente:
public void init() {
img = getImage( getDocumentBase(),"pepe.gif" );
}
public void paint( Graphics g ) {
g.drawImage( img,x,y,this );
}
En el applet Imagen.java, podemos ver el ejemplo completo. Su ponemos en él la existencia del fichero "Imagenes/pepe.gif":
import java.awt.*;
import sun.awt.image.URLImageSource;
import java.applet.Applet;
public class Imagen extends Applet {
Imagen pepe;
public void init() {
pepe = getImage( getDocumentBase(),"Imagenes/pepe.gif"
);
}
public void paint( Graphics g ) {
g.drawString( pepe,25,25,this
);
}
}