Antiguo 05-abr-2006, 16:52   #1 (permalink)
Usuario activo
 
Avatar de DaNi
 
Fecha de Ingreso: marzo-2006
Mensajes: 258
DaNi sin puntos positivos o negativos
Predeterminado Tutorial ActionScript

Introduccion a ActionScript
ActionScript es un lenguaje desarrollado por Macromedia y con la única finalidad en sus inicios de agregarle interactividad a su creciente formato animación vectorial Flash SWF. Bien ActionScript se conoce como tal a partir de la versión 5 de Flash y a partir de esta es cuando los diseñadores se vieron en la necesidad de volverse programadores y le tuvieron que entrar al código pues las posibilidades que brindaba relativamente nueva tecnologÃ#a era bastante.
En fin, después del obligado choro introductivo, comentare que actualmente la versión mas reciente es ActionScript 2.0 y en no mucho saldrán las betas de ActionScript 2.5 y posteriormente el ActionScript 3.0 según publico Macromedia hace un par de meses; pero eso por ahora no nos interesa y continuaremos este mini manual o extenso tutorial (como gusten apreciarlo mejor) directamente al grano o bien tratando de meter la menos teorÃ#a posible, aunque en momentos no habrá otra alternativa.
CaracterÃ#sticas Principales
• ActionScript está basado en la especificación ECMA-262, al igual que otros lenguajes como Javascript y C++
• Es un lenguaje de script, esto quiere decir que no hará falta crear un programa completo para conseguir resultados, normalmente la aplicación de fragmentos de código ActionScript a los objetos existentes en nuestras pelÃ#culas nos permiten alcanzar nuestros objetivos.
• ActionScript 2.0 es un lenguaje de programación orientado a objetos, tiene similitudes, por tanto, con lenguajes tales como los usados en el Microsoft Visual Basic, en el Borland Delphi etc... y aunque, evidentemente, no tiene la potencia de un lenguaje puramente orientado a objetos derivado del C o del Pascal como los anteriores, cada versión se acerca más a un lenguaje de este tipo. AsÃ#, la versión 2.0 de Flash MX 2004 y Flash 8 es mucho más potente y mucho más "orientado a objetos" que su anterior versión 1.0
• ActionScript presenta muchÃ#simos parecidos con el Javascript; si conoces Javascript, la sintaxis y el estilo de ActionScript le resultarán muy familiares. Las diferencias entre ambos lenguajes las puede encontrar en la ayuda que acompaña al Flash.
• En la mayor parte de las ocasiones, no será necesario "programar" realmente, Flash MX pone a nuestra disposición una impresionante colección de "funciones" (de momento entenderemos "funciones" como "código ActionScript que realiza una función determinada") ya implementadas que realizan lo que buscamos, bastará con colocarlas en el lugar adecuado.
Fuente: http://www.aulaclic.es/flashmx_2004/t_17_1.htm
Javascript y ActionScript
• ActionScript no admite objetos especÃ#ficos de navegador como Documento, Ventana y Anclaje.
• ActionScript no admite completamente todos los objetos incorporados de JavaScript.
• ActionScript no admite algunas construcciones sintácticas de JavaScript, como las etiquetas de sentencia.
• En ActionScript, la función eval() sólo puede realizar referencias de variables.
• ActionScript 2.0 admite diversas funciones que no se incluyen en la especificación ECMA-262, como las clases y la comprobación de tipos al compilar. Muchas de estas funciones se modelan a partir de la especificación del lenguaje ECMAScript (ECMA-262) edición 3 (consulte http://www.ecma-international.org/pu.../Ecma-262.htm).
• ActionScript no admite expresiones regulares mediante el objeto RegExp. No obstante, Macromedia Central sÃ# es compatible con el objeto RegExp. Para más información sobre Macromedia Central, consulte www.macromedia.com/software/central.
Fuente: Ayuda de Flash. Libro: Aprendizaje de ActionScript en Flash 2.0, “Diferencias entre Javascript y Actionscriptâ€
Bien entendido esto un poco, pasaremos directamente al código que es lo que nos interesa y comenzaremos por el estilo de programar, mejor conocido como sintaxis.
Sintaxis
La sintaxis de flash es como antes mencionaba un script y en particular muy, pero muy similar a los de java, aunque con sus respectivas diferencias, y aquÃ# tratare de explicar como funciona.
En general el código se escribe de la siguiente manera
Código:
var a:Function = function (){
_root.onEnterFrame.play(movie_mc);
};
Si somos observadores veremos que hay más parámetros que los especificados en el ejemplo 1, y esto se debe a que en la practica entre mas especifico sea nuestro script, menos probabilidades de errores tendremos en el molesto tiempo de depuración.
En el script anterior encontramos que la función que se ejecuta, la define una variable, la cual es “aâ€. Las variables en flash al igual que en otros lenguajes de programación, representa la información o datos que son cambiantes a lo largo de la ejecución del programa, y en flash se definen por la palabra clave “varâ€. AquÃ# algunos ejemplos:
Código:
var casa:String = “Mi casa rojaâ€;
var coche:String = “Mi coche es un BMWâ€;
var edad:Number = “25â€;
vivo = “Mexicoâ€;
Si ponemos atención a los ejemplos anteriores encontraremos que no todas las variables son iguales, y eso es un error del programador. En Flash y mas en especifico en ActionScript se declara una varible con la palabra clave “varâ€, hasta aquÃ# todo esta bien, sin embargo todo lo que se encuentre a la izquierda de un signo de “=†es considerado una variable.
Entonces si funciona lo mismo escribir:
Código:
var casa:String = “Mi casa rojaâ€;
Que escribir:
Código:
vivo = “Mexicoâ€;
Que caso tiene utilizar “varâ€, el asignador “:†y la palabra “String†para declarar mis variables. Pues esto tiene una explicación de logÃ#stica que en un futuro nos evitara muchos dolores de cabeza; ya que el motor compilador de flash viene incluido a partir de la versión MX 2004 con un comprobador de tipos. ¿Esto para que nos sirve? Ahora lo muestro:
Código:
var edad:Number = “25â€; //Correcto
var edad:Number = “Veinticincoâ€; //Incorrecto y genera error.
En el ejemplo anterior creo que mas claro no podrÃ#a dejarlo. Cuando aplicamos un tipo a una variable, forzamos al compilador a que este reconozca exclusivamente el tipo de valor asignado, de lo contrario no se ejecutara y generara un mensaje de error, ejemplo:
Código:
var edad:Number = “Veinticincoâ€; //Incorrecto y genera error.
Flash nos responderá con el siguiente mensaje en el panel de salida:
Código:
El tipo de la declaración de asignación no coincide: se encontró String donde se requiere Number.
Esto aparentemente es un problema, pero cuando comencemos a escribir códigos mas complejos, le daremos gracias con creces, pues el compilador nos esta diciendo donde esta nuestro error de lógica.
En conclusión, es bastante recomendable utilizar siempre la comprobación de tipos para nuestras variables, ya que esto nos ayudara mucho a evitar futuros errores en el momento de la compilación.
Nota: todos los tipos se comprueban, todos excepto el “objectâ€, que flash hace caso omiso a el. Para más información., leer el manual de ayuda del programa. “Comprobaciones de tipoâ€.
[break=Los Operadores]
Una vez entendida una de las principales bases del lenguaje que son las variables, ahora entraremos a otro de mayor importancia y son los operadores.
Puede que se pregunten por el uso de sÃ#mbolos matemáticos en el código. Los sÃ#mbolos se denominan operadores en ActionScript. Los operadores calculan un valor nuevo a partir de uno o varios valores y un operador le permite asignar un valor a una variable del código, por ejemplo el operador de igualdad (=) permite asignar un valor a una variable:
Los operadores son caracteres que especifican cómo combinar, comparar o cambiar los valores de una expresión. Una expresión es cualquier sentencia para la que Flash puede calcular el resultado y que devuelve un valor. Puede crear una expresión combinando operadores y valores, o bien llamando a una función.
El lenguaje ActionScript está formado por clases incorporadas, por lo que se deberá utilizar la sintaxis correcta para formar sentencias de manera que el código se compile y funcione correctamente en Flash. En este caso, la sintaxis se refiere a la gramática y la ortografÃ#a de un lenguaje que le permite programar. El compilador no comprende la sintaxis incorrecta, por lo que observará errores o advertencias en el panel Salida cuando intentes comprobar el documento en el entorno de prueba o no se ejecutara cuando se haya exportado a SWF el contenido. Por consiguiente, la sintaxis es un conjunto de reglas y directrices que le ayudan a formar código ActionScript correcto.
Una sentencia es una instrucción que se da al archivo FLA para que haga algo, como, por ejemplo, ejecutar una acción concreta. Por ejemplo, puede utilizar una sentencia condicional para determinar si algo es verdadero o si existe. Posteriormente, podrÃ#a ejecutar las acciones que especifique, como, por ejemplo, funciones o expresiones, en función de si la condición es verdadera o no. La sentencia if es una sentencia condicional que evalúa una condición para determinar la siguiente acción que debe tener lugar en el código.
[break=Operadores de sufijo]
Los operadores de sufijo toman un operador y aumentan o reducen el valor del operador. Aunque estos operadores son unarios, se clasifican independientemente del resto de operadores unarios debido a su mayor precedencia y a su comportamiento especial.
++ Incremento (sufijo)
-- Decremento (sufijo
Ejemplo:
Código:
var suma:Number = 1;
cantidad = ++suma;
trace(suma);
En el ejemplo anterior la variable “suma†tiene un valor numérico asignado de 1, en la instrucción siguiente aparece otra variable no asignada (object por defecto) con el operador de incremento “++†y ese se asigna a la variable suma y en una tercera instrucción le decimos que trace la variable suma. En nuestro panel de salida obtendremos “2†como resultado de este script.
Al “traducir al español†este script le dice al programa que “suma†tiene un valor de 1, pero cantidad tiene una instrucción que incremente en uno a “suma†y en la tercera lÃ#nea le decimos a flash que escriba la variable “suma†la cual tiene un valor de 1 mas 1 agregado en la segunda instrucción, nos mostrara un resultado de 2.
[break=Operadores unarios]
Los operadores unarios utilizan un operando. Los operadores de incremento (++) y decremento (--) de este grupo son operadores de prefijo, lo que significa que aparecen delante del operando en una expresión. También pueden aparecer tras el operando, en cuyo caso son operadores de sufijo.
++ Incremento (prefijo)
-- Decremento (prefijo)
+ + unario
! - unario (negación)
typeof Devuelve información de tipo
void Devuelve un valor no definido
Ejemplo:
Código:
var f:Number = 1;
var g:Number = 1;
var h:Number = f + g;
var i:Number = h;
trace(i);
Con esto flash nos devolverá un valor de 2. Explico el porque. Asignamos que un valor de 1 a “fâ€, y lo definimos como tipo “Number†al igual que lo hicimos con “gâ€; por el contrario a la variable “h†no le asignamos un valor numérico directamente, pero si especificamos que es un valor de tipo “Number†¿Qué pasa aquÃ#? ¿Por qué no genera error? ¿Y lo mismo para la variable “iâ€? Esto sucede porque al momento de la compilación flash solo entenderá que 1+1 es igual 2 y ese valor le asignara a “h†por lo tanto no contraviene con la declaración de tipo que le asignamos a esta; sucede lo mismo con la variable “i†la cual flash entiende que “i†es igual a “h†y si “h†tiene un valor de “2†entonces “i†también lo tiene, por lo que en la ultima instrucción trazara 2 en el panel de salida.
[break=Operadores multiplicativos]
Los operadores multiplicativos toman dos operandos y realizan cálculos de multiplicación, división o módulo. Entre los operadores numéricos también figuran los operadores aditivos.
Todos los operadores de esta tabla tienen idéntica precedencia:
* Multiplicación
/ División
% Módulo
Ejemplo:
Código:
var f:Number = 2;
var g:Number = 2;
var h:Number = f*g;
var i:Number = h;
trace(i);
Este ejemplo nos devolverá un valor numérico de 4 en el panel de salida.
[break=Operadores relacionales]
Los operadores relacionales toman dos operandos, comparan sus valores y devuelven un valor booleano (verdadero o falso). Todos los operadores de esta tabla tienen idéntica precedencia:

< Menor que
> Mayor que
<= Menor o igual que
>= Mayor o igual que
instanceof Comprueba una cadena prototipo
in Comprueba las propiedades de objetos
Ejemplo:
Código:
var f:Number = 2;
var g:Number = 2;
var h:Boolean = f<=g;
var i:Boolean = h;
trace(i);
Este ejemplo devolverá en el panel de salida “true" (verdadero) porque “f†es menor o igual a “gâ€. En este ejemplo si sois observadores, verán que ha cambiado la asignación de tipos de “h†e “i†de Number a “Boolean"; esto forzara al compilador a solo recibir valores verdadero o falso, y estos operadores relacionales solo devuelven de esta forma.[/break]
[break=Operadores de igualdad]
Los operadores de igualdad toman dos operandos, comparan sus valores y devuelven un valor booleano. Todos los operadores de esta tabla tienen idéntica precedencia:
== Igualdad
¡= Desigualdad
=== Igualdad estricta
¡== Desigualdad estricta
Ejemplo:
Código:
var f:Number = 2;
var g:Number = 2;
var h:Boolean = f==g;
var i:Boolean = h;
trace(i);
Este ejemplo devolverá “true†(verdadero) en el panel de salida.
[break=Operadores de asginacion]
Los operadores de asignación toman dos operandos y asignan un valor a un operando en función del valor del otro operando. Todos los operadores de esta tabla tienen idéntica precedencia:
= Asignación
*= Asignación de multiplicación
/= Asignación de división
%= Asignación de módulo
+= Asignación de suma
-= Asignación de resta
<<= Asignación de desplazamiento a la izquierda en modo bit
>>= Asignación de desplazamiento a la derecha en modo bit
>>>= Asignación de desplazamiento a la derecha en modo bit sin signo
&= Asignación de AND en modo bit
^= Asignación de XOR en modo bit
|= Asignación de OR en modo bit
Ejemplo
Código:
var f:Number = 2;
var g:Number = 10;
var h:Number = f*=g;
var i:Number = h;
trace(i);
Este ejemplo devolverá 20 como resultado de la multiplicación de f * g.
Existen muchos mas operadores, los cuales podemos encontrar mucha información detallada en la Ayuda, Operadores. del programa. Estos otros son un tanto mas complejos[/break]
DaNi está desconectado  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Antiguo 05-abr-2006, 17:21   #2 (permalink)
Usuario activo
 
Fecha de Ingreso: noviembre-2005
Mensajes: 800
imported_LorD_FeniX sin puntos positivos o negativos
Predeterminado

Gracias es un magnifico tutorial (lo has echo tu?) Saludos!!
imported_LorD_FeniX está desconectado  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Antiguo 05-abr-2006, 17:26   #3 (permalink)
Usuario activo
 
Avatar de DaNi
 
Fecha de Ingreso: marzo-2006
Mensajes: 258
DaNi sin puntos positivos o negativos
Predeterminado

Cita:
Iniciado por LorD_FeniX
Gracias es un magnifico tutorial (lo has echo tu?) Saludos!!
Despues de 3 tutoriales no doy para tanto, es un tutorial que hice hace un tiempo con un amigo, bueno yo buscaba info y el redactaba y todavia seguia en el foro donde lo publicamos, y aqui esta
DaNi está desconectado  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Antiguo 05-abr-2006, 17:51   #4 (permalink)
Usuario activo
 
Avatar de SnoK
 
Fecha de Ingreso: marzo-2006
Mensajes: 222
SnoK sin puntos positivos o negativos
Predeterminado

Increible, esta muy bien pero, partelo en diferentes partes, osea en diferentes paginas.
Esque es un poquito largo xDDD
SnoK está desconectado  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Antiguo 05-abr-2006, 17:56   #5 (permalink)
Usuario activo
 
Avatar de DaNi
 
Fecha de Ingreso: marzo-2006
Mensajes: 258
DaNi sin puntos positivos o negativos
Predeterminado

como mucho puedo amrcar un poco mas las partes xD pero partirlo na xD
DaNi está desconectado  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Antiguo 05-abr-2006, 18:03   #6 (permalink)
Usuario activo
 
Avatar de SnoK
 
Fecha de Ingreso: marzo-2006
Mensajes: 222
SnoK sin puntos positivos o negativos
Predeterminado

Lo digo mayormente para ahorrar trabajo a los moderadores ya que en otro tutorial le pidieron que lo hiciera a otra persona.

iRRa:
He dividido el tutorial en secciones para mejorar su visualización. Os recuerdo que podéis partir los tutoriales en varias secciones con el siguiente código:

Cita:
[break=TITULO]TEXTO[/break]
SnoK está desconectado  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Antiguo 05-abr-2006, 18:09   #7 (permalink)
Usuario activo
 
Avatar de DaNi
 
Fecha de Ingreso: marzo-2006
Mensajes: 258
DaNi sin puntos positivos o negativos
Predeterminado

voy a ello, esta mu bien este code nunca lo habia visto

EDITO: ya esta todo perfecto

SaLuDoS
DaNi está desconectado  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Antiguo 05-abr-2006, 18:50   #8 (permalink)
Usuario activo
 
Avatar de Slaad
 
Fecha de Ingreso: marzo-2006
Ubicación: Vallekas
Mensajes: 445
Slaad sin puntos positivos o negativos
Predeterminado

Está muy bien el tutorial, felicidades tio! un saludo!
Slaad está desconectado  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Antiguo 05-abr-2006, 20:22   #9 (permalink)
Usuario activo
 
Avatar de iRRa
 
Fecha de Ingreso: noviembre-2005
Ubicación: Cadiz, Andalucía (España)
Mensajes: 409
iRRa sin puntos positivos o negativos
Enviar un mensaje por MSN a iRRa
Predeterminado

Muy buen tutorial. Gran aporte, felicidades!!! SIgue asÃ#
__________________
.:: Todo el Rock de la provincia de Cádiz ::.

iRRa está desconectado  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Tema Cerrado

Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

Los Códigos BB están Activado
Las Caritas están Activado
[IMG] está Activado
El Código HTML está Desactivado
Trackbacks are Activado
Pingbacks are Activado
Refbacks are Activado

Temas Similares
Tema Autor Foro Respuestas Último mensaje
[TuToRiAl Mp3 FlAsH] skater Programación y Diseño Web 5 06-sep-2008 23:11
Pedido Tutorial SSL prody Asuntos Técnicos, Seguridad y Configuración 2 01-may-2006 22:10
Tutorial phpMyAdmin DaNi Programación y Diseño Web 0 07-abr-2006 12:19
Tutorial PHP SouYir0 Programación y Diseño Web 2 27-mar-2006 06:48
Tutorial AJAX El_Barto Programación y Diseño Web 1 13-oct-2005 00:50

Alojamiento web, Hosting Reseller, Servidores Dedicados - All in Hosting

La franja horaria es GMT. Ahora son las 06:23.

Rioserver
Web hosting y dominios
Planes de hosting desde 2.90 USD
Soporte 24/7

www.rioserver.com

Infranetworking.com
Hosting PHP-MySQL
desde $3,5 dólares al mes!
Servidores Dedicados Hosting Reseller
www.infranetworking.com

Hosting en Mexico
500 Mb de espacio 29 pesos al mes
Soporte 24 h, cpanel,
Solicite prueba gratuita.

www.albergueweb.com.mx

AQPhost es Hosting Reseller
Te asesoramos
Inicia tu empresa de Web Hosting
¡hoy mismo!

www.aqphost.com/revendedores.htm


     ComunidadHosting  

La más grande comunidad dedicada al web hosting en nuestro idioma.

Para anunciar en ComunidadHosting, o para información general, por favor utiliza el formulario de contacto.




Allinhosting v


Desarrollado por: vBulletin® Versión 3.7.5
Derechos de Autor ©2000 - 2009, Jelsoft Enterprises Ltd.
Traducido por mcloud de vBhispano.com

Search Engine Friendly URLs by vBSEO 3.2.0