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

armar un slideshow con un archivo xml

Estas en el tema de armar un slideshow con un archivo xml en el foro de Flash y Actionscript en Foros del Web. Gente del foro Que tal!!! Me baje un tutorial para armar un slideshow que traia los archivos xml, fla, y el archivo jpg con las ...
  #1 (permalink)  
Antiguo 11/01/2006, 15:20
 
Fecha de Ingreso: octubre-2005
Ubicación: - Bs. As.-Argentina
Mensajes: 75
Antigüedad: 19 años, 1 mes
Puntos: 0
armar un slideshow con un archivo xml

Gente del foro
Que tal!!!
Me baje un tutorial para armar un slideshow que traia los archivos xml, fla, y el archivo jpg con las imagenes para armarlo a partir de estos archivos, el tema que pude armar una galeria tomando estos archivos de base ahora quise hacer otra galeria que a mi criterio no modifique nada copie el archivo y los codigos tal cual estan en el slide que funciona pero... hay algo que hago mal ya que este que arme yo no anda
El fla esta armado de la siguiente manera hay dos capas en la primera inserte este codigo
MovieClip.prototype.alpha = function(vel, to) {
this.vel = vel;
this.to = to;
this.alpha_init = this._alpha;
this.onEnterFrame = function() {
updateAfterEvent();
if (this.to != undefined && this.vel != undefined) {
if (this.to>this.alpha_init) {
if (this._alpha<=100) {
this._alpha += this.vel;
} else {
this.onEnterFrame = null;
}
} else {
if (this._alpha>this.to) {
this._alpha -= this.vel;
} else {
this.onEnterFrame = null;
}
}
} else {
}
};
};
el mc empty esta en esa capa(1º)
y en la segunda capa esta este codigo
Stage.scaleMode="noScale";
Stage.align="LT";


// set random # variables - each must be 0 for first 'while' loop below
var randomNum = 0;
var randomNumLast = 0;

// movie clip containers
this.createEmptyMovieClip("loader1_mc",2,{_x:0,_y: 0});
this.createEmptyMovieClip("loader2_mc",1,{_x:0,_y: 0});

// preload watcher
this.createEmptyMovieClip("watcher_mc",100);

// load xml
images_xml = new XML();
images_xml.ignoreWhite=true;
images_xml.onLoad = parse;
images_xml.load("images_madero.xml");

function parse(success) {
if (success) {
imageArray = new Array();
var root = this.firstChild;
_global.numPause = Number(this.firstChild.attributes.timer * 1000);
_global.order = this.firstChild.attributes.order;
_global.looping = this.firstChild.attributes.looping;
_global.fadetime = Number(this.firstChild.attributes.fadetime);
var imageNode = root.lastChild;
var s=0;
while (imageNode.nodeName != null) {
imageData = new Object;
imageData.path = imageNode.attributes.path;
imageArray[s]=imageData;
imageNode = imageNode.previousSibling;
s++;
}
imageArray.reverse();
imageGen(imageArray);
} else {
trace('problem');
}
}

// depth swapping
function swapPlace(clip,num) {
eval(clip).swapDepths(eval("loader"+num+"_mc"));
}

function loadImages(data,num) {
if (i==undefined || i == 2) {
i=2;
createLoader(i,data,num);
i=1;
} else if (i == 1) {
createLoader(i,data,num);
i=2;
}
}
function createLoader(i,data,num) {
thisLoader=eval("loader"+i+"_mc");
thisLoader._alpha=0;
thisLoader.loadMovie(data[num].path);
watcher_mc.onEnterFrame=function () {
var picLoaded = thisLoader.getBytesLoaded();
var picBytes = thisLoader.getBytesTotal();
if (isNaN(picBytes) || picBytes < 4) {
return;
}
if (picLoaded / picBytes >= 1) {
swapPlace("loader2_mc",1);
thisLoader.alpha(_global.fadeTime,100);
timerInterval = setInterval(imageGen,_global.numPause,data);
delete this.onEnterFrame;
}
}
}
function imageGen(data) {
// random, or sequential?
if (_global.order=="random") {
// choose random # between 0 and total number of images
while (randomNum == randomNumLast) {
randomNum = Math.floor(Math.random() * data.length);
}
loadImages(data,randomNum);
randomNumLast = randomNum;
} else if (_global.order=="sequential") {
// start at 0, increment to total number of images, then drop back to zero when done
if (p==undefined || p==data.length && _global.looping=="yes") { p=0; } else { break; }
loadImages(data,p);
p++;
} else {
trace ("order attribute in xml isn't correct - must specify either 'random' or 'sequential'");
}
clearInterval(timerInterval);
}
stop();
donde mi archivo xml se llama images_madero
el fla es slideshow_madero.fla
y el archivo de imagenes con que armo el xml se llama puerto madero . El archivo xml es sencillo y no creo que haya errores alli si puede tener errores son los codigos AS.
De antemano agradezco la ayuda
Silvi@
__________________
"Dios existe, pero a veces duerme:
sus pesadillas son Nuestra existencia..."
Ernesto Sabato
  #2 (permalink)  
Antiguo 12/01/2006, 06:56
 
Fecha de Ingreso: octubre-2005
Ubicación: - Bs. As.-Argentina
Mensajes: 75
Antigüedad: 19 años, 1 mes
Puntos: 0
No quiero ser cargosa, pero como nadie me respondio vuelvo a repreguntar, estuve mirando los tutoriales que le recomendaron a otro chico que pregunto algo semejante pero ...estan en english... y mi drama es que una galeria pude armar pero como no manejo AS solo copie y pegue el que esta en el tutorial y en el que yo arme debo incurrir en algun error.
Graciass!!
Silvi@
__________________
"Dios existe, pero a veces duerme:
sus pesadillas son Nuestra existencia..."
Ernesto Sabato
  #3 (permalink)  
Antiguo 12/01/2006, 17:54
Avatar de SAPINTO  
Fecha de Ingreso: junio-2005
Ubicación: just another fucked up pl
Mensajes: 777
Antigüedad: 19 años, 5 meses
Puntos: 0
a ver señorita... demosle un vistazo al xml, ok?
__________________
if(user=="female" && user>="hot"){
user.gotoAndStop("sapinto's bed");
}
mi portafolio
  #4 (permalink)  
Antiguo 12/01/2006, 19:40
 
Fecha de Ingreso: octubre-2005
Ubicación: - Bs. As.-Argentina
Mensajes: 75
Antigüedad: 19 años, 1 mes
Puntos: 0
A ver señor...
este es el codigo que tiene el xml
<gallery timer="5" order="sequential" looping="yes" fadetime="5">
<image path="Puerto Madero/Puerto madero_1.jpg" />
<image path="Puerto Madero/Puerto madero_2.jpg" />
<image path="Puerto Madero/Puente de la mujer.jpg" />
<image path="Puerto Madero/Puente de la mujer_2 .jpg" />
<image path="Puerto Madero/Puente de la mujer_3.jpg" />
<image path="Puerto Madero/Fragata.jpg" />
<image/gallery>
y el archivo de llama images_madero
__________________
"Dios existe, pero a veces duerme:
sus pesadillas son Nuestra existencia..."
Ernesto Sabato
  #5 (permalink)  
Antiguo 12/01/2006, 20:00
 
Fecha de Ingreso: enero-2006
Ubicación: Buenos Aires, Argentina
Mensajes: 299
Antigüedad: 18 años, 10 meses
Puntos: 5
Buenas.

El xml está mal armado.

<gallery timer="5" order="sequential" looping="yes" fadetime="5">
<image path="Puerto Madero/Puerto madero_1.jpg" />
<image path="Puerto Madero/Puerto madero_2.jpg" />
<image path="Puerto Madero/Puente de la mujer.jpg" />
<image path="Puerto Madero/Puente de la mujer_2 .jpg" />
<image path="Puerto Madero/Puente de la mujer_3.jpg" />
<image path="Puerto Madero/Fragata.jpg" />
<image/gallery>

la última línea tiene que cerrar el nodo root (el primero). O sea:

</gallery>

Antes que nada, siempre te conviene chequear que el xml esté bien armado (las reglas para armar un xml son pocas y sencillas, pero muy estrictas). la manera más fácil es abriéndolo con el navegador. Si te muestra un error, es que está mal. Si te lo muestra bien, entonces es válido. (Ojo, esto no asegura que después ande bien el .swf; pero ahí ya depende de que "parsees" bien el xml; pero ya sabés que tiene una estructura válida).

Suerte
  #6 (permalink)  
Antiguo 13/01/2006, 06:39
Avatar de SAPINTO  
Fecha de Ingreso: junio-2005
Ubicación: just another fucked up pl
Mensajes: 777
Antigüedad: 19 años, 5 meses
Puntos: 0
S H A N F L E !
__________________
if(user=="female" && user>="hot"){
user.gotoAndStop("sapinto's bed");
}
mi portafolio
  #7 (permalink)  
Antiguo 13/01/2006, 10:13
 
Fecha de Ingreso: enero-2006
Mensajes: 6
Antigüedad: 18 años, 10 meses
Puntos: 0
hola me gustaria saber si se puede pasar una página de html a macromedia y hacerle unos arreglos mas,porfavor diganme si se puede o no y si es si ayudenme porfavor.
  #8 (permalink)  
Antiguo 13/01/2006, 10:46
 
Fecha de Ingreso: octubre-2005
Ubicación: - Bs. As.-Argentina
Mensajes: 75
Antigüedad: 19 años, 1 mes
Puntos: 0
Califa010
Gracias por la mano!!! ..mira yo descontaba que el xml estaba bien por lo simple de la estructura..todos los dias se aprende algo..
Viste!! anda el Chavo por estos lares!!
Bocmas
La verdad que no tengo idea si se puede o no pero te aconsejo que lo traslades como nuevo tema,para que mas gente puda leerlo y te ayuden mas rapido, ademas si es html a macromedia cual? dreamweaver o flash por que depende de eso que coloques tu inquietud en una u otra sala.
Silvi@
__________________
"Dios existe, pero a veces duerme:
sus pesadillas son Nuestra existencia..."
Ernesto Sabato
  #9 (permalink)  
Antiguo 13/01/2006, 11:14
 
Fecha de Ingreso: octubre-2005
Ubicación: - Bs. As.-Argentina
Mensajes: 75
Antigüedad: 19 años, 1 mes
Puntos: 0
Pueden creer que no funciona!!
Ayer tambien me arme el slideshow con el tutorial que tiene Bandit en la web y ahora con el consejo de Califa010 abri el archivo xml con el explorador y tenia un error pero tambien lo acabo de arreglar y no funciona, en si en ambos no me salta error ni el archivo xml ni el Ac en flash..
Silvi@
__________________
"Dios existe, pero a veces duerme:
sus pesadillas son Nuestra existencia..."
Ernesto Sabato
  #10 (permalink)  
Antiguo 13/01/2006, 12:11
 
Fecha de Ingreso: enero-2006
Ubicación: Buenos Aires, Argentina
Mensajes: 299
Antigüedad: 18 años, 10 meses
Puntos: 5
Bueno, pueden ser mil cosas, pero para saber si los datos están llegando bien, poné esto dentro de la función parse.

Código PHP:
while (imageNode.nodeName != null) {
    
imageData = new Object;
    
imageData.path imageNode.attributes.path;
    
imageArray[s]=imageData;
    
imageNode imageNode.previousSibling;
    
s++;
   
trace("path="+imageData.path);

Ésta es la línea agregada

trace("path="+imageData.path);

Te tendría que abrir una ventanita con los paths (hacelo desde flash con test Movie, ctrl+enter, no desde un navegador)
  #11 (permalink)  
Antiguo 13/01/2006, 14:46
 
Fecha de Ingreso: octubre-2005
Ubicación: - Bs. As.-Argentina
Mensajes: 75
Antigüedad: 19 años, 1 mes
Puntos: 0
Sip.. me saltaron estos 2 errores...lo mas lindo que el archivo que me funciona debe de tener los mismos errores ...

**Error** Escena=Pelicula, capa=A, fotograma=1:Línea 45: Se ha encontrado un operador 'else' que no coincide con 'if'
} else {

**Error** Escena=Pelicula, capa=A, fotograma=1:Línea 48: Se ha detectado un '}' inesperado
}

Total de errores de ActionScript: 2 Errores comunicados: 2
...
[email protected]iass!!
__________________
"Dios existe, pero a veces duerme:
sus pesadillas son Nuestra existencia..."
Ernesto Sabato
  #12 (permalink)  
Antiguo 13/01/2006, 15:15
 
Fecha de Ingreso: enero-2006
Ubicación: Buenos Aires, Argentina
Mensajes: 299
Antigüedad: 18 años, 10 meses
Puntos: 5
Mmm, no creo. Si el original tuviera esos errores no podría andar (nunca te va habría dejado compilarlo --> exportar el .fla a .swf). Probá hacerlo de vuelta con el original. Renombralo y cambiale nada más la parte donde carga el nuevo xml.

Una cosa, cuando pegues código, mandalo como code (lo ves desde el editor; manualmente tenés que poner [ CODE ] para abrir y [ /CODE] para cerrar, sin los espacios entre el CODE /CODE y los corchetes). Sin sangrías, entender algo es imposible... o todavía más.
  #13 (permalink)  
Antiguo 13/01/2006, 15:51
 
Fecha de Ingreso: octubre-2005
Ubicación: - Bs. As.-Argentina
Mensajes: 75
Antigüedad: 19 años, 1 mes
Puntos: 0
Califa010
si me parec que voy a hacer borron y cuenta nueva y voy a volver a armarlo a ver que pasa.
Silvi@chauchis!!!
__________________
"Dios existe, pero a veces duerme:
sus pesadillas son Nuestra existencia..."
Ernesto Sabato
  #14 (permalink)  
Antiguo 13/01/2006, 16:31
 
Fecha de Ingreso: octubre-2005
Ubicación: - Bs. As.-Argentina
Mensajes: 75
Antigüedad: 19 años, 1 mes
Puntos: 0
Califa010
Lo logre!!!!
Hice todo de nuevo, el archivo que funciona no tiene errores asi que yo en el cotar y pegar debo haber cometido algun error que me volvio loca!!
Pero bueno, ya ta!!! problema resuelto
Mil graciasss!!!
silvi@
__________________
"Dios existe, pero a veces duerme:
sus pesadillas son Nuestra existencia..."
Ernesto Sabato
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 23:30.