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 | |
|---|---|---|---|---|
|
Conmutación. Líneas de acceso (primera parte) En este curso sobre líneas de acceso conmutado aprenderás qué es la conmutación y por qué surge. Conocerás la evolución histórica de estas tecnologías y los principales s... [31/10/08] |
|
741 | ||
|
Visio Express Microsoft Visio Express 2003 es un programa para la creación de diagramas que ayuda a crear diagramas empresariales, entre otras cosas.Con este curso te proponemo... [27/07/06] |
|
2.456 | ||
|
PHP y MySQL. Aplicaciones Web: base de datos MySQL II (octava parte) Programación de aplicaciones Web con PHP y MySQL. Continuando con el estudio de la Base de datos MySQ, aprende sobre el SQL (Lenguaje de consultas estructu... [02/12/08] |
|
984 | ||
Publicar en
del.icio.us
digg
meneame