Comunidad de diseño web y desarrollo en internet online

Problema imposible

Citar            
MensajeEscrito el 30 Jul 2007 12:45 pm
Hola!
Les planteo mi problema que jamas me habia ocurrido:
Tengo una pelicula flash la cual en el primer cuadro del layer superior tengo una movie que tiene como nombre de instancia "cargadora" y en el código del primer cuadro tengo

Código :

cargadora.swapDepths(cargadora.getNextHighestDepth());
cargadora.loadMovie("promo.swf");

Hasta aca todo bien, me hace la carga y todo bien.
En la pelicula principal tambien tengo, un layer mas abajo y tambien en el primer cuadro, el mismo movieClip que tiene como nombre de instancia "cargadorados" y en el codigo del primer cuadro tengo:

Código :

cargadorados.loadMovie("promodos.swf");

Hasta aca tambien todo bien, se hace la carga.
El tema es el siguiente: La pelicula "promo.swf" tiene que estar siempre arriba de "promodos.swf". Por eso justamente he puesto el movieclip "cargadora" en un layer superior a "cargadorados".
Problema: "promo.swf" se carga arriba o abajo de "promodos" de forma totalmente aleatoria!!!!!!
En realidad no tiene mucho sentido...pero Ocurre.
Posibles problemas-soluciones:
1- El navegador......NO....ya probe con Firefox y Explorer y en los dos sigue siendo aleatoria.
2- Le agregue "cargadora.swapDepths(cargadora.getNextHighestDepth());"....NO..Igualmente no hace falta este codigo.
3- Mas layers que se paren a estos 2 layers....NO, le meti como 10 layers y sigue ocuriendo (tampoco tiene sentido que esto lo solucione).
4- Conflicto en LoadMovie....podia ser....entonces corri "cargadorados" y el código de este movieclip al segundo cuadro (entonces asi, cargaba primero una y despues la otra).......NO, lo siguio haciendo.
5-Alguien aqui me dijo ""cargadora.swapDepths(cargadora.getNextHighestDepth()+1);"......NO...no paso nada
6- Todo esto combinado....NO, no paso nada.

Bueno, si alguien puede resoler este dilema , se lo agradezco mucho!!!!!!!

Esta comunidad esta Bueniiiiisima!!!!!!!!!!!
Gracias!

Por pabletein

86 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 30 Jul 2007 06:14 pm
Pues, si tienes un pequeño problema con la profundidad.
Haz intentado DEPURAR tu swf?, en el depurador te va a decir en que profundidad esta cada película.

Mmm tambien puedes intentar poner un cargadora.swapDepths(cargadorados.getDepth) o cargadora.swapDepths(cargadorados)
La verdad no recuerdo cual de las dos funciona, lo que hace es que intercambia los valores si por ejemplo cargadora tiene un valor de depth de 3 y cargadorados de 4 pues lo que hace es intercambiarlos.

Sigue intentando vas bien y creo que con eso se resuelve tu problema.
suerte y bye

Por Gz.Francisco

378 de clabLevel



Genero:Masculino  

Programador economista y buzo

firefox
Citar            
MensajeEscrito el 30 Jul 2007 07:38 pm
Gracias por responder!!
oy a probar esas soluciones en un par de dias, ahora no puedo.
Lo que me mato fue que cada pelicula se ponia encima de la otra ALEATORIAMENTE... eso es lo que no entiendo....pongo la pagina y sale de una manera, la actualizo, solo la actualizo y sale de otra!!! no tiene ningun sentido.
Gracias nuevamente, en unos dias pruebo y te comento los resultados

Por pabletein

86 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 30 Jul 2007 08:59 pm
puede ser el orden en que se cargan
Osea..si se carga una primero queda ..la otra pues ensima...
Entoces has que una ves que la otra ya este cargada se carge la siguiente..pruebalo

Por JaLeRu

Claber

1913 de clabLevel

7 tutoriales

Genero:Masculino  

Existo

firefox
Citar            
MensajeEscrito el 31 Jul 2007 02:14 am
hola que tal pabletein!!! bueno mira ocurre que lo que dices que carga aleatoriamente se debe a que cuando alguna termina de cargarse (aveces es promo aveces no) se pone primero, despues se pone la que se carga al final, esto ocurre porque no especificaste el nivel para cargar y flash toma el nivel 0 osea el _root y todo lo que tenias se defasa un nivel menos.....

para solucionar este problemita puedes hacer algunas cosas:

1)Indicar el nivel donde lo quieres cargar loadMovie("promo.swf",5) o en cierto MC loadMovie("promo.swf",otro_mc);

2)no te recomiendo la primera pero si te sirve adelante.Puedes usar la clase MovieClipLoader que precisamente se creo para evitar esos problemas


saludos!!!!

Por andres_santos

236 de clabLevel



 

opera
Citar            
MensajeEscrito el 31 Jul 2007 12:21 pm
Gracias a todos por responder y ayudarme.
Ahora, unas preguntas: es necesario especificar el nivel de la pelicula cargada si el MC que la carga esta 10 layers superiores al otro layer donde se encuentra el otro MC cargador de la otra pelicula externa????
Es decir, que porque se carga antes una pelicula que otra, eso puede hacer que un layer se traslade 10 puestos hacia arriba?!?!?!?!?!?!?!?
Si los dos MC estubieran en el mismo layer, seria algo mas entendible (aunque le estoy agregando "cargadora.swapDepths(cargadora.getNextHighestDepth());", por lo cual tampoo deberia pasar).
Bueno, este lugar no es para enojarse, jeje, lo que pasa es que me desespera no entender.
Es posible que estas soluciones que me han dado funcionen (todavia no las pruebo), pero el problema no tiene sentido igualmente me parece..... es mas parecido a un conflicto que se genera al hacer dos loadMovie al mismo tiempo.
No mucho mas, esta tarde pruebo estas cosas y les cuento!!!!

Por pabletein

86 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 31 Jul 2007 02:41 pm
hola que tal pabletein!!! si, es bastante recomendable que especifiques el número o nombre del nivel, pues en este caso especifico flash "ignora" si lo pusiste en alguna capa superior, es altamente recomendable que uses MovieClipLoader, que tiene un mejor control de estas cosas....

saludos!!!

Por andres_santos

236 de clabLevel



 

opera
Citar            
MensajeEscrito el 31 Jul 2007 08:58 pm
Por lo que he visto (ME PARECE, no estoy 100% Seguro)
Cuando exportas o cargas algo via script Ignora lo que es Capas...

Por JaLeRu

Claber

1913 de clabLevel

7 tutoriales

Genero:Masculino  

Existo

firefox
Citar            
MensajeEscrito el 02 Ago 2007 03:54 pm
Borra de la memoria todo lo anterior y fijate en esto.

en la primer línea el error esta en que obtienes la profundidad de clip en lugar de tomarlo del _root.

asi debe quedar:

Código :

cargadora.swapDepths(_root.getNextHighestDepth());


además no entiendo porque usar swapDepths, si ya tienes los clips en diferentes capas, una sobre otra.

yo te recomiento quitar la linea donde cambias la profundad, y te debe funcionar como deseas.

Por gabynufe

Claber

446 de clabLevel



 

México, D.F.

msie7
Citar            
MensajeEscrito el 02 Ago 2007 05:56 pm
hola gabynufe!! si pero el usar loadMovie() ignora si lo tienes en capas superiores o inferiores

saludos!!

Por andres_santos

236 de clabLevel



 

opera
Citar            
MensajeEscrito el 02 Ago 2007 06:11 pm
claro que no lo ignora, porque lo cargas en un clip que esta posicionado y en una capa

Por gabynufe

Claber

446 de clabLevel



 

México, D.F.

msie7
Citar            
MensajeEscrito el 02 Ago 2007 10:29 pm
Hola pabletein :)! Si quieres hacer algo similar a un PopUp me parece que tienes que escribir algo como ésto:
mc.swapDepths(mc._parent.getInstanceAtDepth(mc._parent.getNextHighestDepth() - 1));
Ésto, primero extrae el clip de arriba, después lo manda al fondo, y al otro lo manda para arriba.

A mi me parece que el problema viene por lo siguiente:

+ swapDepths, requiere un clip no un número.
+ getNextHighestDepth, devuelve un número.
+ getInstanceAtDepth, devuelve un clip.

A swapDepth, le enviavas un número... :D

PD: no se si escribí bien el getNextHighestDepth... ^^

Saludos!

Por adeons

3 de clabLevel



 

msie

 

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