Lección 1: HelloAS3

Ya salieron las nuevas herramientas de Adobe y con ellas una nueva curva de aprendizaje para todos los paquetes, uno de ellos que tiene bastantes cosas nuevas es Flash que ahora en su versión 9 nos presenta el ActionScript 3 un lenguaje de programación que promete bastante para realizar aplicaciónes web.

A continuación les presento una lección para comenzar a descubrir las ventajas de utilizarlo en nuestros desarrollos.

Requisitos:

Nociones de Programación Orientada a Objetos (Deseable mas no indispensable)
Nociones de ActionScript 2.0

Objetivo:

Crear una clase para nuestra pelicula de flash principal que responda al click de un boton.

Para comenzar abriremos Adobe Flash CS3 Professional y creamos un nuevo archivo flash con soporte ActionScript 3.0.

l1_as3_1.gif

Vamos a guardar el archivo/fichero con el nombre HelloAS3.fla y después crearemos un archivo nuevo de ActionScript (File->New) y lo guardaremos con el nombre HelloAS3.as en el mismo directorio.

l1_as3_2.gif

Y ahora empezaremos con el código, en la primer línea de nuestro archivo ActionScript

1
2
3
4
5
6
7
8
9
package{
import flash.display.*;
 
public class HelloAS3 extends MovieClip{
public function HelloAS3(){
trace("HelloAS3");
}
}
}

En la primer línea se define el paquete, en estos momentos no nos complicaremos la vida y pasaremos por alto ese detalle. Después se importan todas las clases heredadas de flash.display, en castellano eso significa que agregando esa linea podremos utilizar casi todos los objetos que pueden ser mostrados en el flash player digo casi por los videos entran en otra libreria a pesar de que el video también es heredada de display pero eso es tema de otra leccion. Lo que sigue es crear nuestra clase HelloAS3 considerando dos puntos importantes.

1)Siempre debe extender una clase MovieClip o heredada de MovieClip, para los no programadores solo basta mencionar que siempre debe ser MovieClip.

2) Debe de ser una clase pública (con public al principio).

La que sigue es una función constructor, esto significa que cuando corra la pelicula flash esa función se ejecutara automáticamente, como veran tiene el mismo nombre de la clase y debe ser pública.

Al final y no menos importante tenemos el clásico trace que hara el resto del trabajo, ahora grabamos el archivo de ActionScript y pasaremos a HelloAS3.fla en donde haremos click en el stage y abriremos el panel de propiedades (Window->Properties->Properties) y en la caja de Document class: pondremos el nombre de la clase que acabamos de crear HelloAS3.

Lo que resta es un Ctrl + Enter para correr nuestra aplicación flash y ver un hola mundo en la ventana de Output.

Ahora creamos un rectangulo que nos servirá de boton, lo seleccionamos y lo hacemos Symbolo (Modify->Convert to Symbol..) y lo haremos un simbolo Button.

l1_as3_3.gif

A este botón le pondremos un nombre de instancia btnShowMessage y guardaremos el archivo fla.

Volvemos al archivo HelloAS3.as y escribiremos el siguiente código:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
package{
import flash.display.*;
import flash.events.*;
public class HelloAS3 extends MovieClip{
public function HelloAS3(){
trace("HelloAS3");
btnShowMessage.addEventListener(MouseEvent.CLICK,btnShowMessage_onRelease);
}
 
public function btnShowMessage_onRelease(event:MouseEvent){
trace("click");
}
}
}

Se agrego la línea que importa flash.events para manejar eventos de los objetos, también se agregó en el constructor un addEventListener al boton de forma parecida a la como hacia para los componentes en el ActionScript2.

Al final una función que manda el click a la ventana output, grabamos y probamos nuestra pelicula flash para verla terminada.

Les recomiendo a la par de ir aprendiendo Flash el repasar los conceptos de programacion orientada a objetos para que los paquetes y los import no representen mucho problema.

Dan.