Comunicar varios swf mediante mdm.Forms

In: Flash| MDM Zinc

27 Oct 2008

Existe la posibilidad de comunicarnos entre distintos swf usando mdm zinc mediante la clase mdm.Forms. Esto nos puede ayudar mucho a no cargar tantos nuestros swf en las aplicaciones que desarrollemos. Así podemos tener por ejemplo en un swf, la carga de clientes con sus detalles y en otro nuestra aplicación principal.  Así mientras trabajamos en la aplicación, cuando debemos seleccionar el cliente, se nosa cargará el swf en otra "Ventana" (Formulario) y no perderemos la ventana principal.

Voy a mostraros un ejemplo muy muy sencillo en el que lo podáis ver fácilmente. He creado un swf que tiene un input text y un boton que al pulsarlo se escribe en un textarea lo que hemos puesto en el input text.

Actionscript:
  1. boton.onRelease=function(){
  2. escribir();
  3. }
  4.  
  5. function escribir(){
  6. algo=campo_txt.text;
  7. texto_txt.text="Escribimos y le mandamos "+algo+"\n"+texto_txt.text;
  8. }

Y luego tenemos otro botón que hace visible el segundo formulario:

Actionscript:
  1. botondos.onRelease=function(){
  2. mdm.Forms.dosForm.visible = true;
  3.  
  4. mdm.Forms.dosForm.show();
  5.  
  6. }

Luego en el segundo swf tenemos solamente dos botones, uno que llama a la función escribir() que está en el primer swf, y otro botón que nos meneará el primer formulario.

Actionscript:
  1. botonparauno.onRelease=function(){
  2. mdm.Forms.MainForm.callFunction("escribir", "", "|");
  3.  
  4. }
  5. botonmeneauno.onRelease=function(){
  6. mdm.Forms.MainForm.shake(5);
  7. }

Para poder llamar a la función de otro swf usamos la función mdm.Forms.NombreFormulario.callFunction(functionName:String, parametersString:String, delimiter:String), de esta manera desde cualquier parte de nuestra aplicación podremos llamar a las funciones declaradas en cualquier swf.

 

Descargar ejemplo.

2 Responses to Comunicar varios swf mediante mdm.Forms

Avatar

Lets

Abril 25th, 2009 at 15:49

Hola one..
dime si sabes como puedo hacer para llamar otros swf con loadmovie a un clip (ventana) desde mi swf base.. sucede que al pasarlo a un exe con zinc no llama ningun swf externo.. he probado dos codigos y ninguno ha funcionado.. sabes por que?

los codigos que probe son..

on (rollOver) {
mdm.Flash.loadMovie(“carpeta1/juego1.swf”, “_root.ventana”);
}

on (rollOver) {
loadMovie(“carpeta1/juego1.swf”, “_root.ventana”);
}

Avatar

Keiner

Mayo 8th, 2010 at 1:30

Holaa!! Tengo un problema con los parámetros en la llamada de la función. la estructura que se usa en mdm es la siguiente:

mdm.Forms.formName.callFunction(functionName:String, parametersString:String, delimiter:String);

Ej:

mdm.Forms.MainForm.callFunction(“myFunction”, “abc|123″, “|”);

donde parametro1=abc y parametro2=123. Pero ambos forman parte de una cadena de caracteres, y yo quiero enviar el valor de 3 variables. ¿Cómo hago para enviar variables?

Alguien tiene una solución a mi problema? Gracias

Comment Form

Bienvenidos

Photostream

    IMAG0015IMAG0016IMAG0009IMAG0003IMAG0005Cactus nuevo