javiestufa
2009-03-27 16:09:56 UTC
Una gilipollez, seguro, pero que me esta volviendo loco.... a ver si me
puedo explicar.... consigo crear un clip vacío, y dentro de este clip crear
otros que contengan imágenes jpg....
Pues bien... si a estos últimos clips la imágenes que tengo en la biblioteca
se las cargo con attachMovie todo me funciona perfecto, pero si por el
contrario intento cargar imágenes desde un XML solo me carga la última
imágen de la lista....
Dejo aquí el código por si alguien me puede decir dónde cojXXXXX esta el
fallo... o también si alguien me pudiera ayudar con la idéa.
Un saludo,
Gracias:
Javier.
//XML
//DECLARACIÓN DE VARIABLES
var base_xml:XML = new XML();
_global.Imagenes = 0;
_global.NombreImagen = "";
_global.Nivel = 0;
//ABRIR BASE XML
base_xml.load("fotografia.txt");
//Parámetros de la base XML
base_xml.ignoreWhite = true;
//Lectura de datos de la base XML
base_xml.onLoad = function(exito) {
if (exito) {
_global.Imagenes = base_xml.firstChild.childNodes[0].childNodes.length;
trace ("Total imágenes en XML : " + _global.Imagenes);
trace ("--------------------------------------------------------"); //
me devuelve el valor correcto del número de imágenes
//IMAGENES
//CREACION DE LIENZO PRINCIPAL
var contenedor:MovieClip =
_root.clpFotografias.createEmptyMovieClip("lienzo",
_root.getNextHighestDepth());
contenedor._x = 0;
contenedor._y = 0;
//CREACION DE IMAGENES
//1er. posicionamiento
var posicionY = 0;
//número de imágenes
for (var i:Number = 0; i<(_global.Imagenes); i++){
//variables
var foto = "foto"+i;
var clip = "clip"+i;
_global.NombreImagen = "fotografia/" +
(base_xml.firstChild.childNodes[0].childNodes[i].firstChild.nodeValue) +
".JPG";
_global.Nivel = (3 + i);
trace ("Imágen = " + _global.NombreImagen);
trace ("Nivel = " + _global.Nivel);
//clip de imágenes
var clip:MovieClip = lienzo.createEmptyMovieClip(foto,
lienzo.getNextHighestDepth());
clip.attachMovie("marco", "marco1", lienzo.getNextHighestDepth()); //
<------- ESTO FUNCIONA
//clip.loadMovieNum(_global.NombreImagen,
lienzo.getNextHighestDepth()); // <------- ESTO NO ME FUNCIONA
//variables
//lienzo
var anchoLienzo = (lienzo._width);
var altoLienzo = (lienzo._height);
//clip
var anchoClip = (clip._width);
var altoClip = (clip._height);
//posicionamiento
clip._x = 0;
clip._y = posicionY;
var altura = (altoLienzo + altoClip)
var posicionY = (posicionY + altoClip);
trace ("Imágen " + i + " Lienzo: Ancho = " + anchoLienzo + " Alto = "
+ altoLienzo);
trace ("Imágen " + i + " Clip: Ancho = " + anchoClip + " Alto = " +
altoClip);
trace ("Imágen " + i + " Posición: = " + posicionY);
trace ("--------------------------------------------------------");
}
}
}
//GENERAL
stop();
puedo explicar.... consigo crear un clip vacío, y dentro de este clip crear
otros que contengan imágenes jpg....
Pues bien... si a estos últimos clips la imágenes que tengo en la biblioteca
se las cargo con attachMovie todo me funciona perfecto, pero si por el
contrario intento cargar imágenes desde un XML solo me carga la última
imágen de la lista....
Dejo aquí el código por si alguien me puede decir dónde cojXXXXX esta el
fallo... o también si alguien me pudiera ayudar con la idéa.
Un saludo,
Gracias:
Javier.
//XML
//DECLARACIÓN DE VARIABLES
var base_xml:XML = new XML();
_global.Imagenes = 0;
_global.NombreImagen = "";
_global.Nivel = 0;
//ABRIR BASE XML
base_xml.load("fotografia.txt");
//Parámetros de la base XML
base_xml.ignoreWhite = true;
//Lectura de datos de la base XML
base_xml.onLoad = function(exito) {
if (exito) {
_global.Imagenes = base_xml.firstChild.childNodes[0].childNodes.length;
trace ("Total imágenes en XML : " + _global.Imagenes);
trace ("--------------------------------------------------------"); //
me devuelve el valor correcto del número de imágenes
//IMAGENES
//CREACION DE LIENZO PRINCIPAL
var contenedor:MovieClip =
_root.clpFotografias.createEmptyMovieClip("lienzo",
_root.getNextHighestDepth());
contenedor._x = 0;
contenedor._y = 0;
//CREACION DE IMAGENES
//1er. posicionamiento
var posicionY = 0;
//número de imágenes
for (var i:Number = 0; i<(_global.Imagenes); i++){
//variables
var foto = "foto"+i;
var clip = "clip"+i;
_global.NombreImagen = "fotografia/" +
(base_xml.firstChild.childNodes[0].childNodes[i].firstChild.nodeValue) +
".JPG";
_global.Nivel = (3 + i);
trace ("Imágen = " + _global.NombreImagen);
trace ("Nivel = " + _global.Nivel);
//clip de imágenes
var clip:MovieClip = lienzo.createEmptyMovieClip(foto,
lienzo.getNextHighestDepth());
clip.attachMovie("marco", "marco1", lienzo.getNextHighestDepth()); //
<------- ESTO FUNCIONA
//clip.loadMovieNum(_global.NombreImagen,
lienzo.getNextHighestDepth()); // <------- ESTO NO ME FUNCIONA
//variables
//lienzo
var anchoLienzo = (lienzo._width);
var altoLienzo = (lienzo._height);
//clip
var anchoClip = (clip._width);
var altoClip = (clip._height);
//posicionamiento
clip._x = 0;
clip._y = posicionY;
var altura = (altoLienzo + altoClip)
var posicionY = (posicionY + altoClip);
trace ("Imágen " + i + " Lienzo: Ancho = " + anchoLienzo + " Alto = "
+ altoLienzo);
trace ("Imágen " + i + " Clip: Ancho = " + anchoClip + " Alto = " +
altoClip);
trace ("Imágen " + i + " Posición: = " + posicionY);
trace ("--------------------------------------------------------");
}
}
}
//GENERAL
stop();