Foros del Web » Creando para Internet » Flash y Actionscript »

Cambiar imagen de fondo

Estas en el tema de Cambiar imagen de fondo en el foro de Flash y Actionscript en Foros del Web. Hola, Tengo una imagen de fondo y varios botones encima con efectos rollover y rollout, lo que quiero es que al pulsar en un boton ...
  #1 (permalink)  
Antiguo 24/11/2005, 13:01
nsb
 
Fecha de Ingreso: noviembre-2005
Mensajes: 3
Antigüedad: 12 años
Puntos: 0
Cambiar imagen de fondo

Hola,

Tengo una imagen de fondo y varios botones encima con efectos rollover y rollout,
lo que quiero es que al pulsar en un boton se cambie la imagen de fondo de la web, y que tenga una imagen cada seccion de la web, es algo sencillo pero no consigo hacerlo,
por favor ayuda.

Gracias
  #2 (permalink)  
Antiguo 24/11/2005, 13:29
Avatar de julio archila  
Fecha de Ingreso: marzo-2005
Ubicación: Quetzaltenango, Guatemala
Mensajes: 272
Antigüedad: 12 años, 9 meses
Puntos: 0
Hola NSB, bienvenido(a) al foro:

eso es algo sencillo de hacer, dejame esplicarte:

Código:
var vacio:MovieClip = this.createEmptyMovieClip("vacio", 1);
var loop:MovieClip = this.createEmptyMovieClip("loop", 0);
var vacio:MovieClip;
linea._xscale = 0;// si necesitas una precarga para cada imagen esta linea te servira para la barra de la carga
function cargador(foto) {
	vacio.loadMovie(foto);
//esto no es nada mas que la precarga para cada imagen que cargas
	loop.onEnterFrame = function() {
		total = vacio.getBytesTotal();
		cargados = vacio.getBytesLoaded();
		t = int((cargados*100)/total);
		linea._xscale = t;
		if (t>=100) {
			delete loop.onEnterFrame;
			linea._xscale = 0;
		}
	};
}
el codigo de arriba hace que cargue una imagen al llamar la funcion "cargador" la cual llamaremos con cada boton, asi:

Código:
boton.onRelease = function(){
cargador("tu_imagen.jpg");
}
aca el "boton" es el nombre de instancia del boton, "tu_imagen.jpg" es el nombre del archivo de imagen que queres cargar, este codigo lo pones por cada boton, claro cambiando el nombre del archivo por el de la imagen que vas a cargar.

ah, para que la precarga funcione tenes que dibujar tu barra de precarga en el escenario, convertirla en movie clip y darle de nombre de instancia "linea"

creo que eso es todo, si tenes mas dudas estamos para servirte.

espero haya sido de ayuda.

saludos ...
__________________
Julio Archila
  #3 (permalink)  
Antiguo 24/11/2005, 14:00
nsb
 
Fecha de Ingreso: noviembre-2005
Mensajes: 3
Antigüedad: 12 años
Puntos: 0
Hola Julio;

Gracias por contestar, no necesito barra de precarga, unicamente las imagenes.
Solo una pregunta mas, donde debo de poner el codigo, he creado una capa nueva y le he puesto las acciones ahi, ¿es correcto? estoy un poco perdida.

Gracias
  #4 (permalink)  
Antiguo 24/11/2005, 14:09
Avatar de julio archila  
Fecha de Ingreso: marzo-2005
Ubicación: Quetzaltenango, Guatemala
Mensajes: 272
Antigüedad: 12 años, 9 meses
Puntos: 0
Hola de nuevo:

veras si tus botones son sibolos de tipo movie clip entonces debes poner el codigo en una capa en la linea de tiempo, en caso fueran de tipo boton, el codigo de las acciones de boton o sea este
Código:
boton.onRelease = function(){
cargador("tu_imagen.jpg");
}
debe ir sobre cada boton, seleccionas el boton y luego seleccionas la pestaña acciones y cambias este codigo por este

Código:
on (release){
cargador("tu_imagen.jpg");
}
como no necesitas precargas, entonces el codigo que si debe ir en la linea de tiempo quedaria asi:
Código:
var vacio:MovieClip = this.createEmptyMovieClip("vacio", 1);
var vacio:MovieClip;
function cargador(foto) {
vacio.loadMovie(foto);
};
espero te haya quedado mas claro, en caso contrario dimelo y te envio un ejemplo para que veas como funciona.

espero haya sido de ayuda...

saludos ...
__________________
Julio Archila
  #5 (permalink)  
Antiguo 24/11/2005, 15:09
Avatar de -=ArgoN=-  
Fecha de Ingreso: octubre-2005
Ubicación: Barcelona, España
Mensajes: 843
Antigüedad: 12 años, 1 mes
Puntos: 1
Hola Julio,
Sabrias decirme como puedo juntar estos 3 scripts en un solo fotograma? Ya lo intente pero el for no me funciona...
FRAME 1:
Código:
stop();
bgtxt = new LoadVars();
bgtxt.load("bg.txt");
bgtxt.onLoad = function(success) {
	if (success) {
		z = this.bgtxt;
		play();
	} else {
		z = 1;
		play();
	}
};
FRAME 2:
Código:
stop();
this.onEnterFrame = function() {
	MC.loadMovie("bg"+z+".jpg");
	if (MC.getBytesTotal()>4 && MC.getBytesLoaded() == MC.getBytesTotal()) {
		trace(MC._width);
		MCwid = MC._width;
		delete this.onEnterFrame;
		play();
	} else {
		MCwid = 5;
		play();
	}
};
FRAME 3:
Código:
XX = System.capabilities.screenResolutionX;
for (x=0; x<XX; x=x+MCwid) {
	MCbg.duplicateMovieClip("MC"+(x/MCwid+1), x/MCwid+1);
	this["MC"+(x/MCwid+1)]._x = x;
	loadMovie("bg"+z+".jpg", "MC"+(x/MCwid+1));
}
stop();
Esto llena el fondo de mi escenario de barritas de 5 de ancho y 820 de alto para formar un fondo de web. ¿alguien sabe como juntarlo?

Muchas gracias a [email protected],

ArgoN
  #6 (permalink)  
Antiguo 24/11/2005, 16:11
Avatar de julio archila  
Fecha de Ingreso: marzo-2005
Ubicación: Quetzaltenango, Guatemala
Mensajes: 272
Antigüedad: 12 años, 9 meses
Puntos: 0
podrias enviarme el fla para verlo?

saludos ...
__________________
Julio Archila
  #7 (permalink)  
Antiguo 24/11/2005, 16:18
nsb
 
Fecha de Ingreso: noviembre-2005
Mensajes: 3
Antigüedad: 12 años
Puntos: 0
Julio te he enviado un email con mi .fla en el que te explico una cosa

Gracias por tu tiempo
  #8 (permalink)  
Antiguo 24/11/2005, 16:55
Avatar de -=ArgoN=-  
Fecha de Ingreso: octubre-2005
Ubicación: Barcelona, España
Mensajes: 843
Antigüedad: 12 años, 1 mes
Puntos: 1
Gracias Julio, ya te he enviado el email y de paso te he agregado al messenger

Nos vemos,

ArgoN
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:58.