Ver Mensaje Individual
  #6 (permalink)  
Antiguo 01/02/2010, 08:02
Avatar de jimylu
jimylu
 
Fecha de Ingreso: noviembre-2006
Ubicación: Perú
Mensajes: 274
Antigüedad: 18 años
Puntos: 5
Respuesta: como hacer para que el cliente cambie cosas

Cita:
Necesito poder hacer lo mismo con fotos. (Normalmente mis loadmovies contienen sobre todo fotos, pero éstas, claro, están en el library y no en el ftp. Es decir que el cliente no puede acceder a ellas y tendría que saber crear un swf con un slide de fotos.)
No sé si me he explicado bien.
¿Existe algo como el loadmovie, pero en loadimage? Para que cualquier imagen con el nombre que llamo sea la que se muestre y la que es loaded?
Para poder realizar esto tienes que hacerlo con xml ya que el usuario no tiene ni idea de como utilizar el flash ni cambiar las imagenes de su libreria y hacer el swf para tal caso no te contrataria lo que tienes que trabajar ahi son los loadmovie dentro de un movie clip y cargarlo externamente desde un xml quiere decir que las imagenes no van a estar dentro de la libreria del swf sino van a ser jalados externamente desde una ruta especifica asi cuando cambies la imagen pues va a cargar la imagen que desees sin que toques ningun codigo basta con reemplazar la imagen con el mismo nombre y en la misma ruta de donde son jalados.

este es el codigo flash creas un movie clip y en el primer fotograma colocas el siguiente codigo


Código:
//CREAMOS MOVIECLIPS CONTENEDORES DE IMAGENES/////////////////
//_root.createEmptyMovieClip("imagen1_mc",1);
//_root.createEmptyMovieClip("imagen2_mc",2);
_root.mc_imagen.createEmptyMovieClip("imagen1_mc",1);
_root.mc_imagen.createEmptyMovieClip("imagen2_mc",2);

//////////////////////////////////////////////////////////////

//ANALIZAMOS NODOS XML////////////////////////////////////////
function analiza_xml() {
	direcciones = new Array();
	duraciones = new Array();
	primer_nodo = imagenes_xml.childNodes;
	nodo_galeria = primer_nodo[0].childNodes;
	for (var j = 0; j<nodo_galeria.length; j++) {
		direcciones[j] = nodo_galeria[j].attributes.direccion;
		duraciones[j] = nodo_galeria[j].attributes.duracion;
	}
}
///////////////////////////////////////////////////////////////

//FUNCION PRINCIPAL////////////////////////////////////////////
function muestra_imagen(cual) {
	var mclListener:Object = new Object();
	mclListener.onLoadInit = function(objetivo_mc:MovieClip) {
		if (objetivo_mc == imagen1_mc) {
			objetivo_mc.swapDepths(imagen2_mc);
			alphaTween = new mx.transitions.Tween(_root.mc_imagen.imagen2_mc, "_alpha", mx.transitions.easing.Regular.easeOut, 100, 0, 2, true);
			alphaTween2 = new mx.transitions.Tween(_root.mc_imagen.imagen1_mc, "_alpha", mx.transitions.easing.Regular.easeOut, 0, 100, 2, true);
		} else {
			objetivo_mc.swapDepths(imagen1_mc);
			alphaTween = new mx.transitions.Tween(_root.mc_imagen.imagen1_mc, "_alpha", mx.transitions.easing.Regular.easeOut, 100, 0, 2, true);
			alphaTween2 = new mx.transitions.Tween(_root.mc_imagen.imagen2_mc, "_alpha", mx.transitions.easing.Regular.easeOut, 0, 100, 2, true);
		}
		
		}
		mi_duracion = duraciones[cual];
		objetivo_mc.onEnterFrame = function() {
			var mi_fecha:Date = new Date();
			milisegundos = mi_fecha.getTime();
			if (hito == undefined) {
				hito = milisegundos;
			}
			milisegundos_pasados = milisegundos-hito;
			if (milisegundos_pasados>1000*mi_duracion) {
				hito = milisegundos;
				siguiente_imagen();
			}
		};
	};
	var imagen_mcl:MovieClipLoader = new MovieClipLoader();
	imagen_mcl.addListener(mclListener);
	if (imagen1_mc.getDepth()<imagen2_mc.getDepth()) {
		imagen_mcl.loadClip(direcciones[cual],imagen1_mc);
	} else {
		imagen_mcl.loadClip(direcciones[cual],imagen2_mc);
	}
}
///////////////////////////////////////////////////////////////

//SECUENCIA IMAGENES///////////////////////////////////////////
function siguiente_imagen() {
	if (cual == undefined) {
		cual = 0;
	} else {
		cual++;
	}
	if (cual == nodo_galeria.length) {
		cual = 0;
	}
	muestra_imagen(cual);
}
///////////////////////////////////////////////////////////////

//LEE XML//////////////////////////////////////////////////////
var imagenes_xml:XML = new XML();
imagenes_xml.ignoreWhite = true;

imagenes_xml.onLoad = function(success) {
	analiza_xml();
	siguiente_imagen();
};

function lee_xml(que) {
	imagenes_xml.load(que);
}

lee_xml("imagen.xml");

stop();

y el archivo imagen.xml
en direccion cambias la ruta y el nombre del archivo y la duracion son en segundos que realizan de imagen en imagen

Código:
<galeria>
<imagen direccion="images/01.jpg" duracion="5" />
<imagen direccion="images/02.jpg" duracion="5" />
<imagen direccion="images/03.jpg" duracion="5" />
<imagen direccion="images/04.jpg" duracion="5" />
<imagen direccion="images/05.jpg" duracion="5" />
<imagen direccion="images/02.jpg" duracion="5" />
</galeria>

si no me entiendes pues te vuelvo a recomendar a leer tutoriales y asi como consejo sin que te molestes no tomes los trabajos tan a la ligera pensando que vas a poder hacerlo por que no solo te va a dar dolores de cabeza sino que vas a quedar mal con la persona que desea tu servicio sino conoces primero verifica como se puede hacer y luego decides si tomas o no el proyecto y asi vas a poder chequear ese problema con mas calma y vas a poder darle solucion sin presion alguna y vas a ver que vas a poder enriquecerte en conocimientos.

disculpa si mi comentario te ofendio pero solo es un consejo de colega
__________________
Espero haberte sido de ayuda. :D
www.jminformatics.com

Última edición por jimylu; 01/02/2010 a las 08:04 Razón: :D