Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
0
DECLARAR VARIABLES.
var nombre:Tipo;
var value2:Number = 17; Variables sin tipo: var someObj:*; var someObj;
Tipos de datos:
String: un valor de texto como, por ejemplo, un nombre o el texto de un captulo de un libro Numeric: ActionScript 3.0 incluye tres tipos de datos especficos para datos numricos: o Number: cualquier valor numrico, incluidos los valores fraccionarios o no fraccionarios o int: un entero (un nmero no fraccionario) o uint: un entero sin signo, es decir, que no puede ser negativo Boolean: un valor true (verdadero) o false (falso), por ejemplo, si un conmutador est activado o si dos valores son iguales
MovieClip: un smbolo de clip de pelcula TextField: un campo de texto dinmico o de texto de entrada SimpleButton: un smbolo de botn Date: informacin sobre un solo momento temporal (una fecha y hora)
} eventSource.addEventListener(EventType.EVENT_NAME, eventResponse);
Ejemplos:
function eventResponse(event:MouseEvent):void { // Actions performed in response to the event go here. } myButton.addEventListener(MouseEvent.CLICK, eventResponse);
Hacer clic en un botn para iniciar la reproduccin del clip de pelcula actual. En el siguiente ejemplo, playButton es el nombre de instancia del botn y this es el nombre especial, que significa "el objeto actual":
this.stop(); function playMovie(event:MouseEvent):void { this.play(); }
Detectar que se est escribiendo en un campo de texto. En este ejemplo, entryText es un campo de introduccin de texto y outputText es un campo de texto dinmico:
function updateOutput(event:TextEvent):void { var pressedKey:String = event.text; outputText.text = "You typed: " + pressedKey; } entryText.addEventListener(TextEvent.TEXT_INPUT, updateOutput);
Detectar que se est escribiendo en un campo de texto. En este ejemplo, entryText es un campo de introduccin de texto y outputText es un campo de texto dinmico:
function updateOutput(event:TextEvent):void { var pressedKey:String = event.text; outputText.text = "You typed: " + pressedKey; } entryText.addEventListener(TextEvent.TEXT_INPUT, updateOutput);
En los dems tipos de datos, para crear una instancia de objeto, se utiliza el operador new con el nombre de clase, como en el siguiente ejemplo:
var raceCar:MovieClip = new MovieClip(); var birthday:Date = new Date(2006, 7, 9);
EL OPERADOR as
El operador as, una de las novedades de ActionScript 3.0, tambin permite comprobar si una expresin es un miembro de un tipo de datos determinado. Sin embargo, a diferencia del operador is, el operador as no devuelve un valor booleano. El operador as devuelve el valor de la expresin en lugar de true y null en lugar de false. En el siguiente ejemplo se muestran los resultados de utilizar el operador as en lugar del operador is en el caso sencillo de comprobar si una instancia de Sprite es un miembro de los tipos de datos DisplayObject, IEventDispatcher y Number. var mySprite:Sprite = new Sprite(); trace(mySprite as Sprite); // [object Sprite] trace(mySprite as DisplayObject); // [object Sprite] trace(mySprite as IEventDispatcher); // [object Sprite] trace(mySprite as Number); // null
FUNCIONES.
Ejemplo: function traceParameter(aParam:String) { trace(aParam); } traceParameter("hello"); // hello Asigna la funcin en un array: var traceArray:Array = new Array(); traceArray[0] = function (aParam:String) { trace(aParam); }; traceArray[0]("hello");
FUNCIONES ANIDADAS.
Ejemplo: function getNameAndVersion():String {
function getVersion():String { return "9"; } function getProductName():String { return "Flash Player"; } return (getProductName() + " " + getVersion()); } trace(getNameAndVersion()); // Flash Player 9
function passByRef(objParam:Object):void { objParam.x++; objParam.y++; trace(objParam.x, objParam.y); } var objVar:Object = {x:10, y:15}; trace(objVar.x, objVar.y); // 10 15 passByRef(objVar); // 11 16 trace(objVar.x, objVar.y); // 11 16
EL OBJETO ARGUMENTS.
Cuando se pasan parmetros a una funcin, se puede utilizar el objeto arguments para acceder a informacin sobre los parmetros pasados a la funcin. Algunos aspectos: El objeto arguments es una matriz que incluye todos los parmetros pasados a la funcin. La propiedad arguments.length notifica el nmero de parmetros pasados a la funcin. La propiedad arguments.callee proporciona una referencia a la misma funcin, que resulta til para llamadas recursivas a expresiones de funcin. Nota: El objeto arguments no estar disponible si algn parmetro tiene el nombre arguments o si se utiliza el parmetro ... (rest). Ejemplo: function traceArgArray(x:int):void { for (var i:uint = 0; i < arguments.length; i++) { trace(arguments[i]); } } traceArgArray(1, 2, 3); // salida: // 1 // 2 // 3 Nota: el compilador tiene que estar desmarcado el modo Estricto. Ejemplo funcin recursiva. var factorial:Function = function (x:uint) { if(x == 0) {
EL PARMETRO ...(REST).
Se utiliza en vez de el objeto arguments, o sea no esta disponible el objeto arguments. Ejemplo: function traceArgArray(... args):void { for (var i:uint = 0; i < args.length; i++) { trace(args[i]); } } traceArgArray(1, 2, 3); // salida: // 1 // 2 // 3
El cdigo siguiente crea una propiedad de funcin fuera de la declaracin de la funcin e incrementa el valor de la propiedad cada vez que se llama a la funcin:
CIERRES DE FUNCION.
Por ejemplo, el cdigo siguiente crea dos funciones: foo(), que devuelve una funcin anidada denominada rectArea() que calcula el rea de un rectngulo y bar(), que llama a foo() y almacena el cierre de funcin devuelto en una variable denominada myProduct. Aunque la funcin bar() define su propia variable local x (con el valor 2), cuando se llama al cierre de funcin myProduct(), conserva la variable x (con el valor 40) definida en la funcin foo(). Por tanto, la funcin bar() devuelve el valor 160 en lugar de 8. function foo():Function { var x:int = 40; function rectArea(y:int):int { //definicion de cierre de funcion return x * y; } return rectArea; } function bar():void { var x:int = 2; var y:int = 4; var myProduct:Function = foo(); trace(myProduct(4));// llamada a cierre de funcin } bar();// 160 El parmetro y dela funcin rectArea toma automticamente el valor de y de bar() o sea 4.
DEFINICIONES DE CLASE.
Por ejemplo, el cdigo siguiente crea una clase denominada Shape que contiene una variable denominada visible: public class Shape { var visible:Boolean = true; } En ActionScript 3.0 se incluye la sentencia package y hay que incluir el nombre del paquete en la declaracin del paquete, no en la declaracin de clase. Por ejemplo, las siguientes declaraciones de clase muestran la manera de definir la clase BitmapData, que forma parte del paquete flash.display, en ActionScript 2.0 y en ActionScript 3.0: // ActionScript 3.0 package flash.display { public class BitmapData {} }