Comunidad de diseño web y desarrollo en internet online

pasar variables entre mcs

Citar            
MensajeEscrito el 23 Feb 2005 09:34 pm
En una pelicula tengo un conjunto de botones q quiero q todos abran otro swf, y este carga una imagen distinta en funcion del boton pulsado, q se le pasará mediante variables.

He intentado pasarle las variables mediante localconnect pero no me funciona, no se si pq la pelicula q carga la imagen se carga en el momento de hacer click... para ello he usado el ejemplo de elecash de su pagina, pero en su ejemplo las 2 peliculas estan cargadas simultaneamente y se comunican (no como en mi caso)

¿puede tener algo q ver?

el codigo de la pelicula emisora es este

Código :

.boton1.onPress = function () {
   fotocarga = 1;
   contendcha.loadMovie ("pelicula2.swf");
   enviarConex(fotocarga);

}


y el codigo de la receptora

Código :

 
conex_entrante = new LocalConnection();


conex_entrante.ejecutar = function(param) {
contenedor.loadMovie ("file:///./images/normal/foto"+param+".jpg");

};


conex_entrante.connect("derecha");



Alguna idea??? :?

Por Raditz

51 de clabLevel



Genero:Masculino  



Ultima edición por Raditz el 24 Feb 2005 02:40 pm, editado 1 vez

Todas partes

msie
Citar            
MensajeEscrito el 24 Feb 2005 02:39 pm
Si a alguien se le ocurre alguna manera de conseguir pasar variables de un mc a otro q me lo diga tb, ya q cualquier cosa me vale :crap:

Por Raditz

51 de clabLevel



Genero:Masculino  

Todas partes

msie
Citar            
MensajeEscrito el 24 Feb 2005 05:01 pm
LocalConnection sirve para pasar variables entre peliculas no entre clips de pelicula...

Estas seguro que debes usar localConnection?? Es decir, tienes dos swf's abiertos al mismo tiempo??

Un saludo!! ^^

Por Elecash

Claber

8126 de clabLevel

37 tutoriales
19 articulos
13 ejemplos

  Bastard Operators From Hell Desarrollador de GAIA Premio_Secretos Héroes

BarnaCity

clabbrowser
Citar            
MensajeEscrito el 24 Feb 2005 05:16 pm
No, seguro no estoy en absoluto :P pensaba q era la manera de hacerlo :oops:

Una pelicula llama a cargar dentro de un mc contenedor suyo, otra pelicula SWF q es a la q debe pasarle las variables con los parametros. Ese SWF cargado dentro de la pelicula principal según los parametros recibidos cargara una imagen u otra :?

Por Raditz

51 de clabLevel



Genero:Masculino  

Todas partes

msie
Citar            
MensajeEscrito el 24 Feb 2005 08:20 pm
A ver, los swfs estan cargados uno dentro de otro? o son dos swfs por separado??

LocalConnection solo funciona con swfs que estan por separado, para comunicar swfs que estan cargados unos dentro de otros hay otras maneras.

Qué necesitas tu??

Por Elecash

Claber

8126 de clabLevel

37 tutoriales
19 articulos
13 ejemplos

  Bastard Operators From Hell Desarrollador de GAIA Premio_Secretos Héroes

BarnaCity

clabbrowser
Citar            
MensajeEscrito el 25 Feb 2005 01:16 am
Saven, ayer estaba tratando de trabajar con imagenes y peliculas y me encontre con algo que me parecio de gran ayuda y es lo siguiente:

dentro del MovieClip declarar una variable o dos o tres si quieren. Entonces despues de esto, cada instancia que creen contendra dicha variable.

Espero les sea de utilidad el descubrimiento que tal vez en CLAB ya ande por ahi

Por centinela218

56 de clabLevel



 

msie
Citar            
MensajeEscrito el 25 Feb 2005 07:35 am
Exacto, dentro de un swf se carga el otro...Cual es el metodo pues, para este caso? :oops:

Por Raditz

51 de clabLevel



Genero:Masculino  

Todas partes

msie
Citar            
MensajeEscrito el 25 Feb 2005 09:00 am
Eso es bastante más fácil de lo que piensas.

Mira, yo he hecho esta prueba que supongo te servirá. Crea un archivo de Flash y pon un clip de película con nombre de instancia "principal_mc".

Ahora en el frame 1 de la línea de tiempo principal pon este código.

Código :

principal_mc.datos = "Estos datos son de principal_mc";

createEmptyMovieClip("contenedor", _root.getNextHighestDepth());
loadMovie("hija.swf", contenedor);


Guardalo con el nombre principal.fla y crea otro swf que se llame hija.fla, no olvides guardarlo en la misma carpeta todo.

Dentro de hija.fla pon un movieClip que se llame hijo_mc, y en la línea de tiempo principal, pon este código en el fotograma 1:

Código :

hijo_mc.datos = _parent.principal_mc.datos;

trace(hijo_mc.datos);


El swf "principal" carga el swf "hija" dentro de un clip de película llamdo "contenedor". Desde dentro de "hija" podemos acceder a nuestra película principal haciendo un _parent. Esto es así porque todo el "hija.swf" se encuentra dentro de un movieClip que se llama "contenedor" que esta en "principal.swf".

Espero que me hayas entendido.

Un saludo!! ^^

Por Elecash

Claber

8126 de clabLevel

37 tutoriales
19 articulos
13 ejemplos

  Bastard Operators From Hell Desarrollador de GAIA Premio_Secretos Héroes

BarnaCity

clabbrowser
Citar            
MensajeEscrito el 25 Feb 2005 10:38 am
Funciona!!!!!!!!!!! :wink:

Pero ahora tengo un problemilla mas basico aun :oops: al hacer ese createEmptyMovieClip, me hace la carga de la segunda pelicula fuera del mc contenedor de la primera, con lo q no me queda situado en el lugar correcto, y me estoy volviendo loco para cargarlo dentro y q coja las variables buuaaaaaaaa :crap:

Por Raditz

51 de clabLevel



Genero:Masculino  

Todas partes

msie
Citar            
MensajeEscrito el 25 Feb 2005 11:30 am
errr... no te acabo de entender bien, ¿que es lo que no esta situado en el lugar correcto? ¿y por qué?

Si lo cargas dentro de "contenedor", pues accedes a el mediante contenedor.hiiiijoooo_mc.datos y ya esta. Y a la inversa es lo mismo pero con un _parent.

Si puedes explicarte un poco mejor... :P

Deu!! ^^

Por Elecash

Claber

8126 de clabLevel

37 tutoriales
19 articulos
13 ejemplos

  Bastard Operators From Hell Desarrollador de GAIA Premio_Secretos Héroes

BarnaCity

clabbrowser
Citar            
MensajeEscrito el 25 Feb 2005 11:43 am
Si, a ver...

segun tu ejemplo el clip de pelicula vacio se situa en la esquina izquierda superior de la pelicula principal. Yo quiero q se situe dentro del mc q he creado como contenedor situado en otra posicion diferente... he probado con:

Código :

mi_contenedor_mc.datos = "Estos datos son de principal_mc"; 

mi_contenedor_mc.createEmptyMovieClip("contenedor", _root.getNextHighestDepth()); 
loadMovie("hija.swf", mi_contenedor_mc.contenedor);


y luego recuperar los datos con en la otra pelicula cargada con:

Código :

hijo_mc.datos = _parent.mi_contenedor_mc.datos; 

trace(hijo_mc.datos);


y con:

Código :

hijo_mc.datos = _parent.mi_contenedor_mc.contenedor.datos; 

trace(hijo_mc.datos);


pero naaa de naaa :oops:

Por Raditz

51 de clabLevel



Genero:Masculino  

Todas partes

msie
Citar            
MensajeEscrito el 21 Feb 2007 04:39 pm
Hola, y como paso variables del _root a un clip de película?

Por boyere

Claber

191 de clabLevel

1 tutorial

Genero:Masculino  

Simplemente aprendo

msie
Citar            
MensajeEscrito el 04 Ago 2008 12:13 pm
alguien sabe como se haría esto mismo en AS3???? :oops:

Por Uruviel

48 de clabLevel



Genero:Femenino  

msie7
Citar            
MensajeEscrito el 04 Ago 2008 12:22 pm
De la misma manera pero recuerda que el contenedor de las variables tiene que ser un movieClip, no podrás guardar variables dentro de un sprite y menos un shape.

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 07 Ago 2008 07:03 pm
Aveces es una lata pasar variables por que luego se pierden las rutas , cuando tengo que usar la misma variable dentro de diferentes mc o diferentes swf que cargan sobre una pelicula principal declaro variables globlaes

_global.varible= X

Esta la puedes llamar desde cualquier parte del mc sin tener que escribir la ruta solo antepones lo de global por ejemplo

if (_global.variable==x){
}

Por pakoadn

4 de clabLevel



Genero:Masculino  

Mexico

safari
Citar            
MensajeEscrito el 07 Ago 2008 07:22 pm
En AS3 _global ha sido eliminado, en vez de esto se utiliza un miembro estático de la clase que estés utilizando.

Y en AS1 y AS2 cuando declares una variable global, como la que dices:

Código :

_global.varible= X 


Después puedes utilizarla en cualquier parte de tu película sin tener que ponerle _global:

Código :

if (variable==x){
}


Solo ponle el global delante si en el mismo scope donde estás programando se encuentra otra variable local con el mismo nombre.

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 20 Feb 2009 10:47 pm
Buenas...
hay alguna forma de hacer eso invertido? XD

o sea, tener la linea de tiempo principal, con un MC

dentro de el Mc declarar una variable

y poderla llamar en la linea de tiempo principal??

Por juliuk

5 de clabLevel



 

firefox
Citar            
MensajeEscrito el 20 Feb 2009 11:40 pm
Si tienes un MC en la linea de tiempo con nombre de instancia "miClip" y dentro le declaras una variable "variable = 1000", la forma de acceder a dicha variable desde la linea de tiempo principar, es:

Código ActionScript :

miClip.variable = 8000

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 06 Mar 2009 10:25 pm
se agradece mr. elechash

Por lexxex

36 de clabLevel



 

PERU

firefox

 

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