Comunidad de diseño web y desarrollo en internet online

Problemas con Controladores d eEventos y Texto dinamico

Citar            
MensajeEscrito el 29 Jun 2009 12:18 am
Hola a todos, soy nuevo en el foro, aunque ya eh bsucado muchas veces ayuda en el, este es mi primer post,y les pido su ayuda para solucionar mi problema.

Estoy haciendo un reproductor de mp3, el cual carga la informacion desde un archivo XML, ya tengo todo armado, tengo un pequeo carrusel donde muestro las caratulas de los albunes y desde ahi cargo los detalles del disco y la lista de temas. Ahora al punto.

creo en un panel con MC, y dentro de cada uno coloco el nombre de cada tema, la idea es que al ahcer click sobre estos pueda cargar el tema seleccionado, pero esto resulta solo para el primera vez que lo abro, luego los MC al cambiar su texto dinamico dejan de funcionar, luego al volver al primer disco este si funciona, no se si existe alguna funcion para vaciar los controles de acciones que creo y luego recargarlos para cada vez. Tengo esa duda, ya que en otras ocasiones no he logrado por ejemplo eliminar las acciones definidas a un MC.

dejare el codigo donde creo estas acciones.

for (var k:Number=1; k<=totalMp3;k++) {
nodoTema=nodoSeg.attributes.tema;
nodoRuta=nodoSeg.attributes.ruta;
nodoDispo=nodoSeg.attributes.disponible;

//creo rutas de cada boton y su texto
var botonTema:MovieClip =eval("_root.musicBox.btnTema"+k);//ruta del MC
var agregoTema:MovieClip =eval("_root.musicBox.btnTema"+k+".tema"+k);//ruta del texto del boton
//cambio el texto del boton
agregoTema.text=nodoTema;
//agrego las acciones de cada MC
botonTema.onRollOver = function():Void {
agregoTema.textColor = 0xFFFFFF;
}
botonTema.onRollOut = function():Void {
agregoTema.textColor = 0xCE9E59;
}
botonTema.onPress = function():Void {
agregoTema.textColor = 0xFFFF00;
}
botonTema.onReleaseOutside = function():Void {
agregoTema.textColor = 0xCE9E59;
}
botonTema.onRelease = function():Void {

}
//fin insertar botones*/

nodoSeg=nodoSeg.nextSibling;
}

^^

Por esavoy

12 de clabLevel



 

firefox
Citar            
MensajeEscrito el 29 Jun 2009 01:10 am
BUENO YA LO SOLUCIONE.. UFFF LUEGO DEL POST ME ILUMINE AL PARECER Y CORREGI MUCHOS ERRORES QUE TENIA, ADEMAS ENCONTRE QUE USANDO.

delete (rutaMC.evento);
eliminava los eventos creados.
en mi caso

delete (botonTema.onRollOver);
delete (botonTema.onRollOut);
delete (botonTema.onReleaseOut);
delete (botonTema.onPress);
delete (botonTema.onRelease);

usando un ciclo for, elimine todas las acciones creadas antes de volver a crearlas.

otro error fue el usar dentro de cada Evento una variable constante y debia usar una variable que almacene la ubicacion del MC accionado, usando "_target".
por ejemplo:

botonTema.onReleaseOutside = function():Void {
var onreloutTarg:MovieClip = eval(eval(this._target)+".tema");
onreloutTarg.textColor = 0xCE9E59;
}

lo ultimo que arregle, fue usar el mismo nombre de instancia para todos los textos dinamicos dentro de cada MC, con eso pude lograr lo anterior.

DEJE MI SOLUCION ACA, POR SI A ALGUIEN LE SIRVE
SALUDOS.

Por esavoy

12 de clabLevel



 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.