tengo un problemilla
trato de armar una galeria base para poder utilizar y reutilizar cuando necesite cargar imagenes y solo modificar los detalles graficos.
encontre un tutorial y lo copie, lo remodele usando array y for para no tener que escribir tantos addEventListener y demas.
pero en el tutorial utilizaban un complemento para el loader y yo lo cree con as para no tener mas objetos en escena.
le tengo que cambiar los nombres de las funciones porque todavia no lo complete.
me salta el error 1010 cuando aprieto alguno de los botones. dice algo de un termino que no esta definido y no tiene propiedades
la verdad es que no se bien que buscar, donde podra estar el error.
los botones que cargan las imagenes son los del array. en la pantalla no hay mas que esos botones y el bg_mc que es el cuadrado para animar el marco de las imagenes que mas adelante lo voy a crear tambien con as.
bueno, ojala puedan ayudarme
desde ya, muchisimas gracias
juako
Código :
package
{
import flash.display.*;
import flash.events.*;
import flash.filters.*;
import flash.net.*;
import flash.geom.*;
import flash.ui.*;
import flash.utils.*;
import fl.transitions.easing.*;
import fl.transitions.Tween;
import fl.transitions.TweenEvent;
{
public class cargaImagenes extends MovieClip
{
var cargador:Loader = new Loader();
var imagen1:URLRequest = new URLRequest("galeria/imagen1.jpg");
var imagen2:URLRequest = new URLRequest("galeria/imagen2.jpg");
var imagen3:URLRequest = new URLRequest("galeria/imagen3.jpg");
var imagen4:URLRequest = new URLRequest("galeria/imagen4.jpg");
var imagen5:URLRequest = new URLRequest("galeria/imagen5.jpg");
var imagen6:URLRequest = new URLRequest("galeria/imagen6.jpg");
public function cargaImagenes()
{
ima1_mc.addEventListener(MouseEvent.CLICK, si);
function si(e:MouseEvent):void
{
cargador.load (ima1_mc.pic);
cargador.alpha = 0.5;
}
//
cargador.visible = true;
addChild(cargador);
var galerias:Array = new Array("ima1_mc","ima2_mc","ima3_mc","ima4_mc","ima5_mc","ima6_mc");
/*for (var j=0; j < galerias.length; j++)
{
this[galerias[j]].buttonMode = true;
this[galerias[j]].alpha = 0.2;
this[galerias[j]].addEventListener(MouseEvent.CLICK, loadPic);
}
*/
var sWidth:Number = stage.stageWidth;
var sHeight:Number = stage.stageHeight - 100;
function loadPic(e:MouseEvent):void
{
for (var i=0; i < galerias.length; i++)
{
this[galerias[i]].removeEventListener(MouseEvent.CLICK, loadPic);
this[galerias[i]].useHandCursor = false;
}
bg_mc.x = sWidth / 2;
bg_mc.y = sHeight / 2;
cargador.alpha = 0;
cargador.load(e.currentTarget.pic);
}
function calculateSize(e:Event):void
{
var xTween:Tween = new Tween(bg_mc,"width",Regular.easeOut,bg_mc.width,cargador.content.width + 10,0.5,true);
var yTween:Tween = new Tween(bg_mc,"height",Regular.easeOut,bg_mc.height,cargador.content.height + 10,0.5,true);
xTween.addEventListener(TweenEvent.MOTION_FINISH, showPic);
cargador.x = sWidth / 2 - cargador.content.width / 2;
cargador.y = sHeight / 2 - cargador.content.height / 2;
}
function showPic(e:TweenEvent):void
{
var fadeTween:Tween = new Tween(cargador,"alpha",Regular.easeOut,0,1,1,true);
//fadeTween.addEventListener(TweenEvent.MOTION_FINISH, enable);
}
function enable(e:TweenEvent):void
{
for (var s=0; s < galerias.length; s++)
{
this[galerias[s]].addEventListener(MouseEvent.CLICK, loadPic);
this[galerias[s]].useHandCursor = true;
}
}
//ima1_mc.addEventListener(MouseEvent.CLICK, loadPic);
//ima1_mc.buttonMode = true;
ima1_mc.pic = imagen1;
ima2_mc.addEventListener(MouseEvent.CLICK, loadPic);
ima2_mc.buttonMode = true;
ima2_mc.pic = imagen2;
ima3_mc.addEventListener(MouseEvent.CLICK, loadPic);
ima3_mc.buttonMode = true;
ima3_mc.pic = imagen3;
ima4_mc.addEventListener(MouseEvent.CLICK, loadPic);
ima4_mc.buttonMode = true;
ima4_mc.pic = imagen4;
ima5_mc.addEventListener(MouseEvent.CLICK, loadPic);
ima5_mc.buttonMode = true;
ima5_mc.pic = imagen5;
ima6_mc.addEventListener(MouseEvent.CLICK, loadPic);
ima6_mc.buttonMode = true;
ima6_mc.pic = imagen6;
cargador.addEventListener(Event.COMPLETE, calculateSize);
}
}
}
}; 