Comunidad de diseño web y desarrollo en internet online

Flash con otros lenguajes - Parte 1, Visual Basic

Para los que no sepan, podemos enlazar un SWF a una aplicación en Visual Basic (y cualquier otra plataforma Visual de Microsoft que utilice el ShockwaveFlash o control similar) y toda las versiones de Flash que contengan la función FSCOMMAND().
El único requisito para poderle sacar provecho a este documentos es tener algunos pìnitos en Visual Basic.

Preparando Visual Basic

Hacemos uso del Swflash.ocx, lo hacemos eligiendo la opción /Proyecto/Componentes... , o simplemente "Ctrl + T" para abrir aquel panel. De ahí se debe seleccionar la opción ShockwaveFlash para luego agregarla a nuestra caja de herramientas.

Después del paso anterior, lo más normal es que aparezca el logo de Flash como un control más, claro que cuando se tiene Flash MX instalado simplemente aparece en lugar del logo una hoja en blanco, como la de crear nuevo archivo.

Ahora sólo resta dibujar el control que acabamos de agregar dentro del formulario. Se debe tener en cuenta que el tamaño con que se dibuje, será el tamaño con que lo veamos en la aplicación. Además debemos crear una caja de texto y un botón que tendrán los nombres "cajita" y "Command1" respectivamente....y el control que añadimos se llamará "flash", pues de ésta manera podremos pegar el siguiente código y no volveremos a meternos con Visual:

Dim numerito As Double

Private Sub Command1_Click()

flash.SetVariable "c_flash", cajita 'envíamos el valor que hay en "cajita"
' a la variable -c_flash- en flash
End Sub Private Sub flash_FSCommand(ByVal command As String, ByVal args As String) cajita = args 'recibimos el valor de un argumento y lo ubicamos en -cajita- End Sub Private Sub Form_Load() flash.Movie = (App.Path & "\f_vc_v.swf") End Sub

¿ Qué sucede aquí ?

Simple, sin embargo hay que tener pinitos en visual para entender un par de detallitos.
Cuando se carga el formulario, le decimos al control de Flash en donde se encuentra nuestro SWF, por medio del atributo Movie. Valga la redundancia aclarar que en el ejemplo se supone que los archivos están en la misma carpeta, y si no es así, pues simplemente se debe modificar la línea en que se le dice la ruta de la película por la ruta que especifique la posición el archivo.

En el momento en que se oprime el botón (Command1), enviamos el valor que tenemos en nuestra caja de texto al SWF. Ésto aprovechando el atributo SetVariable del control Flash con 2 parámetros:

El primero indica el nombre de la variable que se espera en el SWF y que debe ir entre comillas si se le llama de manera explícita, pues como casi todo en visual también se puede hacer de manera dinámica (...y no se asusten con lo último, los que no entiendan, así nada más funciona); y el segundo pues dice el valor que queremos enviar desde VB.

El método FSCommand se activa cuando desde el SWF se oprime un botón que me dirijo a explicar:

¿ Qué sucede en Flash ?

Creamos una película simple con más o menos las mismas caracteristicas del formulario en VB: Una caja de texto y un botón. En nuestro ejemplo, la caja de texto se llama c_flash.
Para que la cosa funcione, al botón le debemos agregar lo siguiente en sus Acciones:

on (release) {
	fscommand ("", c_flash);
}

Lo que se hace en la línea 2 es enviar el nombre de la variable.

Ahora sí, el método FSCommand se activa en VB cuando ocurre lo anterior en Flash. Entonces recibe dos parámetros, pero sólo usamos el segundo, que corresponderá al valor de la variable, al fin y al cabo el primero lo enviamos vacío.

Comentarios Finales

Para una referencia completa de los metodos y propiedades del objeto ActiveX de Flash, visiten el tutorial de integración de Flash con JavaScript.
Como nota final, el componente ActiveX de Flash 5 hacia atras se llama "SWFLASH:OCX" y de MX hasta MX 2004 se llama "FLASH.OCX", tenganlo en cuenta al distribuir sus aplicaciones

Gerson Montenegro (gersonm)
[email protected]
www.cristalab.com

¿Sabes SQL? ¿No-SQL? Aprende MySQL, PostgreSQL, MongoDB, Redis y más con el Curso Profesional de Bases de Datos que empieza el martes, en vivo.

Descargar Archivo

Publica tu comentario

El autor de este artículo ha cerrado los comentarios. Si tienes preguntas o comentarios, puedes hacerlos en el foro

Entra al foro y participa en la discusión

o puedes...

¿Estás registrado en Cristalab y quieres
publicar tu URL y avatar?

¿No estás registrado aún pero quieres hacerlo antes de publicar tu comentario?

Registrate