Estrenamos un nuevo modelo de eventos tambien en esta versión de Flash, ahora, podemos eventar los componentes directamente como haciamos con un boton y no por medio de funciones, listeners y demas; un punto mas en pro de la usabilidad; para el ejemplo, arrastraremos el componente "Button" al escenario y manteniendolo seleccionado desplegamos el panel de ActionScript, donde , si escribimos on( se desplegaran los eventos asociados a este componente como en la grafica:
Eventos del componente Button Asi que si colocamos el siguiente codigo:
on (click) {
trace("No me presiones :(");
}
Obtendremos al clickear el boton, la siguiente salida:

Pero hagamoslo mas interesante, creemos un campo de texto dinamico en el escenario, le ponemos de nombre de instancia campo_txt y en el code del boton ponemos:
on (click) {
_parent.campo_txt.text="No me presiones :@";
}
Y el texto aparecera en el campo de texto :D
¿ Por que _parent ?
En los componentes, todo componente instanciado es, en escencia, un movie clip, asi que todo tipo de codigo que le asocies ira con el "scope" o alcance de variables del movie clip que lo compone; como el campo de texto estaba un nivel arriba del MovieClip que compone al boton, existe la necesidad de usar _parent, aunque _root funcionaria igual. Muchos otros componentes funcionan asi, asi que no duden en oprimir F1 ante cualquier duda
Clases y programación orientada a objetos Este punto seria tema para todo un tutorial completo, pero intentare abarcar una visión general de la OOP.
Flash ahora incluye programación orientada a objetos real, es decir, para los que han sido programadores, herencia, polimorfismo, interfaces, vamos, como Java (Solo que no hay sobrecarga de metodos[info solo para programadores] ) La tecnica tambien es similar a Java, creas un archivo externo con extensión .as que tenga el mismo nombre que la clase que viene escrita en el y luego lo importas a Flash, para tener mas claro esto; vamos a crear una clase "cuadrado" que nos dibuje ¬_¬ un cuadrado en donde le digamos (Y en nuestro ejemplo, le diremos que lo haga en _root, es decir, en la linea de tiempo principal de la pelicula). En Flash vamos al menu File -> New y en la lista desplegada elegimos ActionScript File.
Guardamos el archivo con el nombre Cuadrado.as y escribimos este codigo en el:
//Declaración de la clase
class Cuadrado{
/*Variable privada (Es decir, solo puede ser vista y modificada por un metodo
de la clase; esta nos servira para saber donde vamos a dibujar */
private var elLugar:MovieClip;
/*Constructor, esta es la función que se ejecutara
al crear una instancia de la clase, como cuando hago
var cosa = new String("Hola");, algo por el estilo ;) */
//Lo olvidaba, para que sea constructora debe tener el mismo
//nombre de la clase
function Cuadrado (lugar:MovieClip) {
//Asignamos a la variable privada de la clase la variable que llega por parametro
this.elLugar = lugar;
}
//Función publica (Accesible desde el nombre de instancia de la clase) que nos servira
//Para dibujar el cuadrado
public function drawCuadrado () {
var X:Number,Y:Number;
this.elLugar.createEmptyMovieClip("cuadro",1);
this.elLugar.beginFill(0xFF0000,90);
X=(this.elLugar._width/2)+100;
Y=(this.elLugar._height/2)+100;
this.elLugar.moveTo(X,Y);
X+=100;
this.elLugar.lineTo(X,Y);
Y+=100;
this.elLugar.lineTo(X,Y);
X-=100;
this.elLugar.lineTo(X,Y);
Y-=100;
this.elLugar.lineTo(X,Y);
this.elLugar.endFill();
}
}
Y en una pelicula cualquiera colocamos solamente este codigo en el primer keyFrame:
//Trae nuestro archivo Cuadrado.as, no podemos colocar codigo de clases
//Dentro de una pelicula, debe ser en un archivo externo
import Cuadrado;
//Creamos una nueva variable de tipo "Cuadrado", es decir, nuestra clase
//Ahm!, pasandole como parametro al constructor _root, lugar donde dibujara
var test:Cuadrado = new Cuadrado(_root);
//Invocamos al función publica drawCuadrado de nuestra clase
test.drawCuadrado();
Y veremos dibujado un lindo cuadrado en nuestro escenario :D
Hay 3 opiniones. Opina sobre este curso.
| Cursos | Valoración | Alumnos | Vídeo | |
|---|---|---|---|---|
|
Photoshop. Hacer cómic con fotografía Photoshop. Hacer cómic con una fotografía, mediante el programa Photoshop, aprenderás a crear |
|
1.419 | ||
|
Dibujar en perspectiva Todo aquel que decida pintar un cuadro o simplemente adquirir conocimientos de perspectiva, debe saber que si en el dibujo aparece una o varias personas, estará sometida ... [10/03/05] |
|
7.796 | ||
|
Procesos en C. Sincronización (primera parte) Curso de informática sobre sincronización de procesos en C y señales en linux que te ofrece la posibilidad de comprender los mecanismos de comunicación entre procesos inf... [21/10/08] |
|
993 | ||
Publicar en
del.icio.us
digg
meneame