Comunidad de diseño web y desarrollo en internet online

Liigero Problema con MovieClips y Componentes

Citar            
MensajeEscrito el 07 Ago 2007 02:12 pm
Hola, abro otro post por una cuestión funcional y estética de mezclar movieClips y componentes (button, comboBox, etc.)

Al cargar movieclips sobre un escenario que contiene componentes antes dichos, éstos quedan "debajo" de los movieclips, por lo tanto menos visibles. Es decir, el movieclip me tapa el componente.

Me gustaría que esto no pase, quiero que el componente se quede por encima. Esto me resulta útil sobretodo, con los comboBox, pues al desplegarse lo movieclips ya insertados, hacen que no sean visibles los labels de la lista de un comboBox.

¿Como puedo cambiar esto?

Por Raxel_Totana

20 de clabLevel



Genero:Masculino  

Totana

firefox
Citar            
MensajeEscrito el 07 Ago 2007 02:44 pm
hola Raxel_Totana!!! esto se debe a, puedes solucionarlo, si lo deseas, añadiendo un MC vacío en tu area de trabajo o donde quiereas cargar los nuevos mc, y asegurate que este ésta en un nivel inferior a los componentes, ahora carga tus nuevos mc en ese mc vacío, debería funcionar.....te lo digo de esta froma pues es más fácil para que evites lidiar con swapDepths()

saludos!!!

Por andres_santos

236 de clabLevel



 

opera
Citar            
MensajeEscrito el 07 Ago 2007 03:05 pm
El problema es que puedo tener en el escenario unos 24.000 movieclips pequeños, asi que no me vale el metodo de swapDepths().
La otra forma, la del clip vacio, no al acabo de entender, por que si pongo un clip vacio donde se despliega el comboBox se quedará siempre por detras de los clips pequeños, pues al crearse los clips pequeños tiene número más altos, ejemplo:

SombrillaContador++;
var miSombrilla = new MovieClipLoader();
miSombrilla.loadClip("sombrilla.swf",SombrillaContador);

SombrillaContador tiene un número mucho más alto.

Por Raxel_Totana

20 de clabLevel



Genero:Masculino  

Totana

firefox
Citar            
MensajeEscrito el 07 Ago 2007 04:36 pm
hola Raxel_Totana!! nup, creas un MC vacío que te va a hacer las veces de holder, ese no lo borras, solo esta ahi, por debajo de los componentes, asi insertas todos los MCs dentro del que esta vacío y si quieres borrarlos, solo quitalos de adentro no quites el MC completo...

saludos!!!

Por andres_santos

236 de clabLevel



 

opera
Citar            
MensajeEscrito el 07 Ago 2007 04:44 pm
No entiendo muy bien esa forma de hacerlo.
No se le puede decir al comboBox queen toda la ejecución del programa, él va a estar por encima de todos los demas clips. No me intersesa que cambie su posición en el eje Z, sino que sea la mas visible siempre.

Por Raxel_Totana

20 de clabLevel



Genero:Masculino  

Totana

firefox
Citar            
MensajeEscrito el 07 Ago 2007 04:47 pm
hola Raxel_Totana!! :-s hay otra forma, utilizar una clase de tipo estatica, esta clase es utilizada por el flash IDE para controlar la posicion de los mc, si alguna vez has usado "Traer al frente,Enviar atrás" se lográ en código con esto:

Código :

mx.behaviors.DepthControl.bringToFront(el_mc);

Por andres_santos

236 de clabLevel



 

opera
Citar            
MensajeEscrito el 07 Ago 2007 05:01 pm
Ok, pero soy nuevo en esto. ¿Donde, como y cuando se usan las clases estáticas?, ademáslo que yo quiero que este por encima de todo no es un movieclip, es un comboBox, aunque creo que Flash MX lo trata al final todo como movieclip.

Por Raxel_Totana

20 de clabLevel



Genero:Masculino  

Totana

firefox
Citar            
MensajeEscrito el 07 Ago 2007 08:00 pm
Escucha a santos, ese guey es como Doogie Howser. Siempre tiene la respuesta

Por BiggyBoreal

14 de clabLevel



 

firefox
Citar            
MensajeEscrito el 07 Ago 2007 09:01 pm
hola Raxel_Totana!!! cuando me refiero a estatica quiere decir que la uses tal cual te puse el código, las clases que no son estaticas son por ejemplo LoadVars() que debes crear una variable para usarla ejemplo:

var lv:LoadVars=new LoadVars();

(ojo pero la que te di se usa tal cual)

saludos!!!

Por andres_santos

236 de clabLevel



 

opera
Citar            
MensajeEscrito el 08 Ago 2007 07:11 am
Ok, pero ¿donde coloco ese código en mi comboBox para que funcione?.

Este es el código que contiene mi comboBox, pero algo acortado, en realidad el switch tiene 23 case posibles.

on (change) {
var seleccionado = this.selectedIndex;
switch (seleccionado)
{
case 0:
BarbacoaContador++;
var miBarbacoa = new MovieClipLoader();
miBarbacoa.loadClip("barbacoa.swf",BarbacoaContador);
break;
case 1:
CactusContador++;
var miCactus = new MovieClipLoader();
miCactus.loadClip("cactus.swf",CactusContador);
break;
case 2:
CaducoContador++;
var miCaduco = new MovieClipLoader();
miCaduco.loadClip("caduco.swf",CaducoContador);
break;

}
}

Por Raxel_Totana

20 de clabLevel



Genero:Masculino  

Totana

firefox

 

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