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

usar xml para generar una galería de imágenes

Estas en el tema de usar xml para generar una galería de imágenes en el foro de Flash y Actionscript en Foros del Web. Hola. Estoy haciendo el sitio web de un artista plástico en Flash y Dreamweaver MX, y en la parte que se expone su obra quiero ...
  #1 (permalink)  
Antiguo 19/03/2004, 09:12
 
Fecha de Ingreso: noviembre-2003
Mensajes: 68
Antigüedad: 20 años, 4 meses
Puntos: 0
Pregunta usar xml para generar una galería de imágenes

Hola.
Estoy haciendo el sitio web de un artista plástico en Flash y Dreamweaver MX, y en la parte que se expone su obra quiero insertar unas galerías en flash, que muestren una lista de thumbnails (en movie clips con precarga), que al hacer release permita cargar la versión grande de la foto en otro movie clip (tb con precarga), y un texto descriptivo de la foto en un campo de texto dinámico.

Quisiera insertar los paths con xml, porque son cerca de 300 fotos divididas en unas 6 galerías.

Alguien puede orientarme acerca de cómo debo encarar el proyecto, ya que nunca he trabajado con xml.

Gracias.
__________________
[|_4 (0|\/|U|\|1(4(10|\| 35 |_4 FU3RZ4]
  #2 (permalink)  
Antiguo 30/04/2004, 12:15
 
Fecha de Ingreso: marzo-2004
Mensajes: 41
Antigüedad: 20 años
Puntos: 0
una forma casera de hacerlo seria asi (sin usar xml):
Agarras todos los jpg y creas los thurmbails con photoshop o lo que sea
nombras los thurmbails asi:

thu001.jpg
thu002.jpg
thu003.jpg
...
thu300.jpg

haces lo mismo con las fotos

big001.jpg
big002.jpg
...
big300.jpg

en el .fla escaneas un directorio predefinido en busca de thu*.jpg y los cargas en la pelicula... al hacer click sobre el thurmbail que sea te fijas a que "big" corresponderia y abris el "big" correspondiente...
  #3 (permalink)  
Antiguo 30/04/2004, 12:40
Avatar de PatomaS
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: En alguna otra parte
Mensajes: 4.656
Antigüedad: 20 años
Puntos: 63
Hola

Bueno las soluciones que te dan son bastante buenas.

Pero si lo quieres hacer con xml, la cosa es bastante simple.

Primero te diré que la ayuda del flash es bastante buena en ese aspecto, por lo que no dudes en usarla para ver la secuencia de colocación de los comandos para abrir y utilizar el documento .xml.

Respecto a como crear el archivo .xml, pues es aun más fácil

Yo te recomendaría que crearas un archivo por categoría y dentro de cada uno contenidos de esta forma, más o menos:

Código:
<?xml version="1.0" encoding="UTF-8"?>
<listado>
	<imagen ruta="../imagenes/imagen_001.jpg" ancho="100" alto="100" />
	<imagen ruta="../imagenes/imagen_002.jpg" ancho="100" alto="100" />
</listado>
Obviamente los nombres y datos son solo de ejemplo, pero puedes poner en el xml todos los datos que requieras de esa manera, los lees al mismo tiempo.

La verdad es que no es muy necesario poner los altos y anchos en el documento, pero nunca vien mal para utlizarlos dentro de la peli.

Por cierto ese código que te pongo de ejemplo lo metes en un documento vacio, lo guardas con un nombre como categoria_1.xml y ya está listo tu primer archivo.

Espero que te sirva

Suerte

Felicidad
__________________
¡ hey, hou, hou, hey !
  #4 (permalink)  
Antiguo 21/05/2004, 17:17
 
Fecha de Ingreso: marzo-2004
Ubicación: Córdoba
Mensajes: 239
Antigüedad: 20 años
Puntos: 0
Hola, estoy haciendo ahora de esta misma forma una gallería de imagines. Necesito traer ahora un atributo ruta (con las rutas a las imágenes dinámicas) que pensé en traerlo con LoadMovie, quise hacerlo de esta forma...

_root["mc"+n].cargo = menu.firstChild.childNode[n].attributes.ruta;

_root["mc"+n].onLoad = function() {
loadMovie(this.cargo, 0);
};
n++

..pero no me da...


quiero que apenas comience la película se me carguen las imagines de la ruta de “cargo” en cada movie al cual le corresponda.

El “onLoad” lo estoy utilizando correctamente??

Esta bien la llamada al movie “cargo” de esta forma?....


loadMovie(this.cargo, 0);

perdón por tanto embrollo
me gustaría mas que nada que me expliquen mas que la solución el error que estoy cometiendo y las recomendaciones a tener en cuenta cuando utilizo este tipo de llamadas a atributos xml.
Seguro me va a servir mas y además para no molestarlos siempre
bye
  #5 (permalink)  
Antiguo 21/05/2004, 17:22
 
Fecha de Ingreso: marzo-2004
Ubicación: Córdoba
Mensajes: 239
Antigüedad: 20 años
Puntos: 0
Patomas o alguien.. podrian decirme como hacen en flash para llamar el atributo rutas??
yo probe de la siguiente forma con load movie, pero no funciona...




Código PHP:
_root["mc"+n].cargo menu.firstChild.childNode[n].attributes.ruta;
  
 
_root["mc"+n].onLoad = function() {
   
loadMovie(this.cargo0);
   };
n++ 
como veran hago duplicatemoviemas arriba segun la cantidad de elementos con atributos ruta tenga en el xml.

quiero que apenas comience la película se me carguen las imagines de la ruta de “cargo” en cada movie al cual le corresponda.

El “onLoad” lo estoy utilizando correctamente??

Esta bien la llamada al movie “cargo” de esta forma?....


loadMovie(this.cargo, 0);

perdón por tanto embrollo
me gustaría mas que nada que me expliquen mas que la solución el error que estoy cometiendo y las recomendaciones a tener en cuenta cuando utilizo este tipo de llamadas a atributos xml.
Seguro me va a servir mas y además para no molestarlos siempre
bye
  #6 (permalink)  
Antiguo 31/05/2004, 08:10
Avatar de Sette  
Fecha de Ingreso: febrero-2002
Mensajes: 1.747
Antigüedad: 22 años, 1 mes
Puntos: 3
nadie me lo puede pasar en zip?, avisenme y les mando mi correo
__________________
diseño y programación
http://www.manucastro.es
[email protected]
  #7 (permalink)  
Antiguo 31/05/2004, 09:15
Avatar de PatomaS
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: En alguna otra parte
Mensajes: 4.656
Antigüedad: 20 años
Puntos: 63
Hola

Bueno, disculpen la tardanza, pero no había visto que había más respuestas a este mensaje. Un código de ejemplo, sería este:

Código:
function algo(nombre) {
	var grupo_imagenes = new XML();
	var archivo = nombre+".xml";
	grupo_imagenes.ignoreWhite = true;
	grupo_imagenes.load (archivo);
		grupo_imagenes.onLoad = function() {
		nodo = this;
		total_items = nodo.firstChild.childNodes.length;
		for (n = 0; n < total_items; n++) {
			listado[n] = nodo.childnodes[0].childnodes[n].attributes.nombre;
			lista_lista.addItemAt(n, listado[n]);
		}
	}
	gotoAndPlay(2);
}
Con ese código, «introduces» el archivo xml en el flash, luego solo debes crear alguna iteración para ir leyendo los atributos que quieras, en el ejmplo, te pongo la lectura del atributo «nombre».

El archivo .xml, tendría la estructura que mencionaba un poco más arriba.

Espero que sirva, pero si no les va bien, ya avisarán.

Y con usrte, los que saben de verdad leerán este mensaje y aportarán su conocimiento.

Felicidad
__________________
¡ hey, hou, hou, hey !
  #8 (permalink)  
Antiguo 04/06/2004, 09:38
 
Fecha de Ingreso: marzo-2004
Ubicación: Córdoba
Mensajes: 239
Antigüedad: 20 años
Puntos: 0
panomaS sigo loco con esto...mi problema especifico recide en que no logro traer las imagenes y ya no se como probar, mi problema esta en esta declaracion:

_root["mc"+n].onLoad = function() {
menu.firstChild.childNodes[n].attributes.ruta+".jpg"
}

yo lo hice asi pero no se si el OnLoad me va a dar "bolilla"
como puedo hacer esta declaracion??

probe con un cuadro de texto para ver si me funcionaba....

_root["mc"+n].caja = menu.firstChild.childNodes[n].attributes.ruta+".jpg"
eso me anda pero las imagenes no las voy a llevar al cuadro de texto.

necesito poner las imagenes dentro de un MC "cuadro" pero bue eso lo de menos me encargo yo
ME CONFORMO CON SABER COMO TRAIGO LAS JPG DEL ATRIBUTO RUTAS
cualquier cosa si no es molestia, pasame un mail
te agradesco
saludos
  #9 (permalink)  
Antiguo 05/06/2004, 23:29
 
Fecha de Ingreso: marzo-2004
Ubicación: Córdoba
Mensajes: 239
Antigüedad: 20 años
Puntos: 0
aca pongo el codigo completo.... a ver si me ayuda alguien un poquito

Código:
menu = new XML();
menu.load("lista1.xml");
menu.ignoreWhite = true;
menu.onLoad = crea;
function crea() {
   total = menu.firstChild.childNodes.length; 
   basey = 20;
   basex = 100;
   disty = 135;
   n = 0;
function creamenu() {
   if (n<total) {
   clip = mc.duplicateMovieClip("mc" + n, (n+1));
   clip._x = basex+130;
   clip._y = basey;
   basey += disty;
   _root["mc"+n].caja = menu.firstChild.childNodes[n].attributes.descripcion;
   _root["mc"+n].carga = menu.firstChild.childNodes[n].attributes.ruta+".jpg"
	loadMovie(this.carga,0);
	   
 	n++;
}
mi problema es que necesito traer unas imagenes jpg que estan determinadas en el atributo ruta de un XML

lo trato de hacer de la siguiente manera...(donde ruta es el atrubuto que contiene la ruta al jpg)

Código:
_root["mc"+n].carga = menu.firstChild.childNodes[n].attributes.ruta+".jpg"
	loadMovie(this.carga,0);
el problema es simple, ESTO NO ME DA PELOTA
exixte una forma de meterle manos a esto para que me funcione??
se los agradeceria.
saludos
  #10 (permalink)  
Antiguo 06/06/2004, 16:02
 
Fecha de Ingreso: septiembre-2003
Mensajes: 19
Antigüedad: 20 años, 5 meses
Puntos: 0
Se puede tambien al cargar un JPG con loadMovie, darle sus dimenciones, es decir que el jpg mida tanto pero yo quiero que se muestre mas chico en el movieclip???
  #11 (permalink)  
Antiguo 06/06/2004, 16:15
 
Fecha de Ingreso: marzo-2004
Ubicación: Córdoba
Mensajes: 239
Antigüedad: 20 años
Puntos: 0
ponele algun atributo mas en el xml, osea

ejemplo

Código:
<imagen01  ruta="primera.jpg" ancho="200" alto="100" >
despues yo probaria llamando estos atributos de la siguiente manera...

siguiendo el ejemplo mio.....

Código:
_root["mc"+n].carga = menu.firstChild.childNodes[n].attributes.ruta+".jpg"
loadMovie(this.carga,0);
vendria luego algo asi...

Código:
_root["mc"+n].carga._with =  menu.firstChild.childNodes[n].attributes.ancho
_root["mc"+n].carga._heigh = menu.firstChild.childNodes[n].attributes.alto
no se, quiza habra que "meterle man" mas pero creo que por ahi viene la cosa... porbare.
Mientras ALGUIEN PUEDE DECIRME SI LO QUE PUSE CON LOADMOVIE PARA TRAER LAS IMAGENES ESTA BIEN??

Última edición por juanchilo; 06/06/2004 a las 16:19
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 13:42.