problema con imágenes

leoadell
01 de Junio del 2002
Hola, estoy trabajando con double buffering para componer una imágen con un gif de fondo y varios otros gif chicos encima, el tema es que a veces la variable que contiene la imagen de fondo se reemplaza por una de las imágenes chicas. A veces anda bien , a veces se reemplaza, como puedo solucionar el problema, para mi que es algo de posiciones de memoria

Tania Gtz.
01 de Junio del 2002
A continuacion te mando el codigo de lo que a mi me enseñaron como doble buffer:

public void nombre_clase extends applet implements runnable{
Thread hilo=null;
//creacion del buffer y objeto graphics que usas para pintar en el buffer
Image buffer;
Graphics pagina;
}
//en el metodo init() se inicializan las dos variables
buffer=createImage(size().width,size().heigth);
pagina=buffer.getGraphics();

public void paint(Graphics g){
pagina.drawString("Hola", x,y);
//esta es la linea que pone la imagen de pagina en el objeto g
g.drawImage(buffer,0,0,this);
}
public void update (Graphics g){
paint (g);
}
public woid run(){
while (true){
repaint ();
Thread.sleep(hilo);
}}
public void start(){
if (hilo==null){
hilo=new Thread (this);
hilo.star();
}}
public void stop(){
if(hilo!=null){
hilo.stop();
hilo=null;
}}


Con respecto a que se intercambian las imagenes lo mas probable es que sea un error de logica tuyo, ya sea que estes utilizando una sola variable imagen para tus 3 imagenes y al momento de mandarlas llamar se confunde el compilador, o que tengas 3 variables imagenes, y que al momento de llamar por ejemplo a la imagen1 en realidad estas llamando a la imagen2, es decir en vez de mandar llamar la imagen de fondo llamas una de las imagenes pequeñas.(Es probable que te estes revolviendo con tus variables).

Tania Gtz.
01 de Junio del 2002
P.D.Me equivoque en unas palabras del codigo:
woid es void
star es start