1 Step RoboPDF, ActiveEdit, ActiveTest, Authorware, Blue Sky Software, Blue Sky, Breeze, Breezo, Captivate, Central,
ColdFusion, Contribute, Database Explorer, Director, Dreamweaver, Fireworks, Flash, FlashCast, FlashHelp, Flash Lite,
FlashPaper, Flash Video Encoder, Flex, Flex Builder, Fontographer, FreeHand, Generator, HomeSite, JRun, MacRecorder,
Macromedia, MXML, RoboEngine, RoboHelp, RoboInfo, RoboPDF, Roundtrip, Roundtrip HTML, Shockwave, SoundEdit,
Studio MX, UltraDev y WebHelp son marcas registradas o marcas comerciales de Macromedia, Inc. y pueden estar registradas en
Estados Unidos o en otras jurisdicciones, incluidas las internacionales. Otros nombres de productos, logotipos, diseños, títulos,
palabras o frases mencionados en esta publicación pueden ser marcas comerciales, marcas de servicio o nombres comerciales de
Macromedia, Inc. o de otras entidades y pueden estar registrados en ciertas jurisdicciones, incluidas las internacionales.
Información de terceros
Esta guía contiene vínculos a sitios Web de terceros que no están bajo el control de Macromedia y, por consiguiente, Macromedia
no se hace responsable del contenido de dichos sitios Web. El acceso a uno de los sitios Web de terceros mencionados en esta guía
será a cuenta y riesgo del usuario. Macromedia proporciona estos vínculos únicamente como ayuda y su inclusión no implica que
Macromedia se haga responsable del contenido de dichos sitios Web.
La tecnología de compresión y descompresión de voz tiene licencia de Nellymoser, Inc. (www.nellymoser.com).
La tecnología de compresión y descompresión de vídeo Sorenson™ Spark™ tiene licencia de
Sorenson Media, Inc.
Dirección del proyecto: Sheila McGinn
Redacción: Jen deHaan; Peter deHaan, Joey Lott
Directora de edición: Rosana Francescato
Redactora jefe: Lisa Stanziano
Edición: Linda Adler, Geta Carlson, Evelyn Eldridge, John Hammett, Mary Kraemer, Noreen Maher, Jessie Wood, Anne Szabla
Dirección de la producción: Patrice O’Neill, Kristin Conradi, Yuko Yagi
Producción y diseño multimedia: Adam Barnett, Aaron Begley, Paul Benkman. John Francis, Geeta Karmarkar, Masayo Noda,
Paul Rangel, Arena Reed, Mario Reynoso
Reconocimiento especial a Jody Bleyle, Mary Burger, Lisa Friendly, Stephanie Gowin, Bonnie Loo, Mary Ann Walsh, Erick Vera,
Jorge G. Villanueva, responsables de las pruebas realizadas a la versión beta, y a la totalidad de los equipos de diseño y control de
calidad de Flash y Flash Player.
Primera edición: septiembre de 2005
Macromedia, Inc.
601 Townsend St.
San Francisco, CA 94103, EE.UU.
Macromedia Flash Basic 8 y Macromedia Flash Professional 8 son las herramientas estándar
de edición profesional para la creación de publicaciones Web de gran impacto. ActionScript es
el lenguaje que deberá utilizar para añadir interactividad a aplicaciones Flash, tanto si las
aplicaciones son simples archivos SWF de animación como si son complejas aplicaciones de
Internet. Para utilizar Flash, no es necesario utilizar ActionScript, pero si desea ofrecer a los
usuarios interacción básica o compleja, trabajar con objetos que no sean los incorporados en
Flash (como por ejemplo, botones y clips de película) o convertir un archivo SWF en una
experiencia de usuario más fiable, es posible que desee utilizar este lenguaje.
Para más información, consulte los temas siguientes:
En este manual se presupone que el usuario ya ha instalado Flash Basic 8 o Flash
Professional 8 y sabe cómo utilizarlo. Deberá saber cómo colocar objetos en el escenario y
cómo manipularlos en el entorno de edición de Flash. Si ha utilizado lenguajes de creación de
scripts anteriormente, ActionScript le resultará familiar. No obstante, aunque no tenga
experiencia en programación, le resultará fácil aprender a utilizar ActionScript. Se puede
empezar con comandos muy simples y aumentar el grado de complejidad conforme se va
avanzando. Puede añadir gran cantidad de interactividad a sus archivos sin tener que aprender
(ni escribir) gran cantidad de código.
9
Requisitos del sistema
Los componentes de ActionScript 2.0 no exigen ningún requisito del sistema adicional a los
de Flash 8.
En este manual se presupone que el usuario utiliza la configuración de publicación
predeterminada para los archivos Flash: Flash Player 8 y ActionScript 2.0. Si cambia alguno de
estos valores, es posible que las explicaciones y los ejemplos de código que se muestran en la
documentación no sean válidos. Si desarrolla aplicaciones para versiones anteriores de Flash
Player, consulte el Apéndice D, “Escritura de scripts para versiones anteriores de Flash Player”,
en la página 833.
Actualización de archivos XML de Flash
Es importante tener siempre instalados los archivos XML más recientes de Flash. Macromedia
incorpora en ocasiones nuevas funciones en subediciones (versiones secundarias) de Flash
Player. Cuando se encuentre disponible una versión de este tipo, deberá actualizar su versión
de Flash para obtener los archivos XML más recientes. En caso contrario, el compilador de
Flash 8 podría generar errores si utiliza nuevas propiedades o métodos que no estaban
disponibles en la versión de Flash Player suministrada con la instalación de Flash.
Por ejemplo, Flash Player 7 (7.0.19.0) contenía un método nuevo para el objeto System,
System.security.loadPolicyFile. Para acceder a este método, debe utilizar el programa
de instalación de Player Updater para actualizar todos los Flash Players instalados con Flash.
De no hacerlo, el compilador de Flash mostrará errores.
Recuerde que puede instalar un Player Updater que sea una o varias versiones principales
superior a la versión de Flash de que dispone. Al hacerlo, obtendrá los archivos XML
necesarios sin que se produzcan errores de compilador al publicar en versiones anteriores de
Flash Player. En ocasiones, los nuevos métodos o propiedades están disponibles para versiones
anteriores, por lo que, si dispone de los archivos XML más recientes, se minimizan los errores
de compilador que aparecen al intentar acceder a métodos o propiedades anteriores.
10Introducción
Documentación
Este manual proporciona información general sobre la sintaxis de ActionScript y cómo utilizar
ActionScript cuando se trabaja con distintos tipos de objetos. Para obtener detalles sobre la
sintaxis y el uso de cada uno de los elementos de lenguaje, consulte Referencia del lenguaje ActionScript 2.0.
Para más información, consulte los temas siguientes:
■ “Información general sobre el libro Aprendizaje de ActionScript 2.0” en la página 11
■ “Archivos de muestra” en la página 15
■ “Términos utilizados en este documento” en la página 14
■ “Copiar y pegar código” en la página 14
Información general sobre el libro Aprendizaje de
ActionScript 2.0
En la siguiente lista se resume el contenido de este manual:
■ El Capítulo 1, “Novedades de Flash 8 ActionScript”, describe las funciones nuevas de
ActionScript, los cambios aplicados al compilador y al depurador, así como el nuevo
modelo de programación para el lenguaje ActionScript 2.0.
■ El Capítulo 2, “Escritura y edición en ActionScript 2.0”, describe las funciones del editor
de ActionScript incluido en Flash que facilita la escritura de código.
■ El Capítulo 3, “ActionScript”, explica en qué consiste el lenguaje ActionScript y
proporciona detalles que permiten elegir la versión de ActionScript que debe utilizar.
■ El Capítulo 4, “Principios básicos de la sintaxis y el lenguaje”, describe la terminología y
los conceptos básicos del lenguaje ActionScript. Estos conceptos se utilizan en todo el
manual.
■ El Capítulo 5, “Funciones y métodos”, explica cómo escribir distintos tipos de funciones y
métodos, así como la forma de utilizarlos en la aplicación.
■ El Capítulo 6, “Clases”, describe la forma de crear objetos y clases personalizadas en
ActionScript. Este capítulo enumera también las clases integradas en ActionScript y ofrece
una breve descripción de cómo utilizarlas para obtener acceso a potentes funciones de
ActionScript.
■ El Capítulo 7, “Herencia”, describe la herencia en el lenguaje ActionScript, así como la
forma de ampliar clases incorporadas o personalizadas.
■ El Capítulo 8, “Interfaces”, describe la forma de crear objetos y trabajar con interfaces en
ActionScript.
Documentación11
■ El Capítulo 9, “Gestión de eventos”, explica varias maneras distintas de controlar los
eventos: métodos de controlador de eventos, detectores de eventos y controladores de
eventos de clip de película y de botón.
■ El Capítulo 10, “Datos y tipos de datos”, describe la terminología y los conceptos básicos
de datos, tipos de datos y variables. Estos conceptos se utilizan en todo el manual.
■ El Capítulo 11, “Trabajo con clips de película”, describe clips de película y el código
ActionScript que puede utilizar para controlarlos.
■ El Capítulo 12, “Utilización de texto y cadenas”, examina las distintas maneras en las que
se puede controlar texto y cadenas en Flash e incluye información sobre el formato de
texto y FlashType (representación de texto avanzada, como el texto suavizado).
■ El Capítulo 13, “Animaciones, filtros y dibujos”, explica cómo crear imágenes y animación
basadas en código, añadir filtros a objetos y dibujar con ActionScript.
■ El Capítulo 14, “Creación de interacciones con ActionScript”, describe algunos métodos
sencillos para crear aplicaciones más interactivas, incluido el control de reproducción de
archivos SWF, la creación de punteros personalizados y la creación de controles de sonido.
■ El Capítulo 15, “Utilización de imágenes, sonido y vídeo”, describe la forma de importar a
las aplicaciones Flash archivos multimedia externos, como imágenes de mapa de bits,
archivos MP3, archivos de Flash Video (FLV) y otros archivos SWF. En este capítulo se
incluye también información general sobre cómo trabajar con vídeo en las aplicaciones, así
como la forma de crear una barra de progreso que carga las animaciones.
■ El Capítulo 16, “Trabajo con datos externos”, describe cómo procesar datos de fuentes
externas utilizando scripts de servidor o de cliente en las aplicaciones. En este capítulo se
explica cómo integrar datos con las aplicaciones.
■ El Capítulo 17, “Aspectos básicos de la seguridad”, explica la seguridad en Flash Player,
que se aplica al trabajo con archivos SWF situados localmente en el disco duro. En este
capítulo se indican también los problemas de seguridad entre dominios y cómo cargar
datos de servidores o entre dominios.
■ El Capítulo 18, “Depuración de aplicaciones”, describe el depurador de ActionScript
incluido en Flash que facilita la escritura de aplicaciones.
■ El Capítulo 19, “Recomendaciones y convenciones de codificación para ActionScript
2.0”, explica cuáles son las prácticas recomendadas a la hora de utilizar Flash y escribir
ActionScript. En este capítulo se enumeran también las convenciones de codificación
estándar, como la asignación de nombre a las variables, además de otras convenciones.
■ El Apéndice A, “Mensajes de error”, contiene la lista de mensajes de error que el
compilador de Flash puede generar.
■ El Apéndice B, “Operadores de Flash 4 no admitidos”, enumera todos los operadores de
Flash 4 y su asociatividad.
12Introducción
■ El Apéndice C, “Teclas del teclado y valores de códigos de tecla”, muestra todas las teclas
de un teclado estándar y los valores correspondientes del código de tecla ASCII utilizados
para identificar las teclas en ActionScript.
■ El Apéndice D, “Escritura de scripts para versiones anteriores de Flash Player”,
proporciona las directrices que le ayudarán a escribir scripts con una sintaxis correcta para
la versión de reproductor que desea utilizar.
■ El Apéndice E, “Programación orientada a objetos con ActionScript 1.0”, ofrece
información sobre la utilización del modelo de objetos de ActionScript 1.0 para escribir
scripts.
■ El Apéndice F, “Terminología”, incluye una lista de la terminología que se utiliza con
mayor frecuencia al trabajar con el lenguaje ActionScript y ofrece descripciones de los
distintos términos.
En este manual se explica cómo utilizar el lenguaje ActionScript. Para obtener información
sobre los elementos del lenguaje propiamente dichos, consulte la Referencia del lenguaje ActionScript 2.0.
Convenciones tipográficas
En este manual se utilizan las convenciones tipográficas siguientes:
■ La fuente de código indica que se trata de código de ActionScript.
■ La fuente de código en negrita, que normalmente aparece dentro de un
procedimiento, indica código que debe modificar o añadir al código que ya ha
incorporado al archivo FLA. En algunos casos, puede utilizarse para resaltar código que se
desea comprobar.
■ El texto en negrita indica datos que debe escribir en la interfaz de usuario, como el
nombre de un archivo o un nombre de instancia.
■ El texto en cursiva indica un término nuevo definido en el texto que sigue. En una ruta de
archivo, puede indicar un valor que debe sustituirse (por ejemplo, por el nombre de un
directorio de su propio disco duro).
Documentación13
Términos utilizados en este documento
En este manual se utilizan los términos siguientes:
■ Usted hace referencia al desarrollador que escribe un script o una aplicación.
■ El usuario hace referencia a la persona que ejecutará los scripts y las aplicaciones.
■ La fase de compilación es la fase en la que se publica, exporta, prueba o depura un
documento.
■ El tiempo de ejecución es el espacio de tiempo en el que se ejecuta un script en Flash Player.
Los términos de ActionScript como método y objeto se definen en el Apéndice F,
“Terminología”, en la página 851.
Copiar y pegar código
Al pegar código ActionScript desde el panel Ayuda al archivo FLA o ActionScript, se debe
tener cuidado con los caracteres especiales, que incluyen las comillas dobles especiales
(también denominadas comillas curvas). Estos caracteres no los interpreta el editor de
ActionScript, por lo que el código genera un error si intenta compilarlo en Flash.
Se puede determinar que los caracteres de comillas son caracteres especiales cuando no
presentan el código de color correcto. Es decir, si todas las cadenas no cambian de color en el
editor de código, debe sustituir los caracteres especiales por las comillas rectas normales. Si se
escriben las comillas simples o dobles directamente en el editor de ActionScript, se introducen
siempre como comillas rectas. El compilador (al probar o publicar un archivo SWF) genera un
error y le indica si en el código hay un tipo erróneo de caracteres (comillas especiales o curvas).
NOTA
También pueden aparecer las comillas especiales cuando se realiza la operación de
pegar código ActionScript desde otras ubicaciones, como una página Web o un
documento de Microsoft Word.
Controle que los saltos de línea sean los correctos al copiar y pegar código. Cuando se pega
código desde otras ubicaciones, puede que la línea de código salte a la línea siguiente en una
ubicación incorrecta. Asegúrese de que el código de color de la sintaxis es el correcto en el
editor de ActionScript si piensa que los saltos de línea podrían ser un problema. Puede
comparar el código del panel Acciones con el del panel Ayuda para ver si coinciden. Pruebe a
activar la función Ajustar texto en el editor de ActionScript para ayudar a resolver el exceso de
saltos de líneas del código (seleccione Ver > Ajustar palabra en la ventana Script, o bien Ajustar
texto en el menú emergente del panel Acciones.)
14Introducción
Recursos adicionales
Además de este manual sobre ActionScript, hay otros manuales sobre temas de Flash, como
componentes y Macromedia Flash Lite. Se puede acceder a cada manual del panel Ayuda
(Ayuda > Ayuda de Flash) desde la Tabla de contenido predeterminada. Haga clic en el botón
Borrar para ver cada uno de los manuales disponibles; para más información, consulte
“Dónde encontrar documentación sobre otros temas” en la página 18.
Para más información sobre los demás recursos disponibles, consulte los temas siguientes:
■ “Archivos de muestra” en la página 15
■ “Dónde encontrar archivos PDF o documentación impresa” en la página 16
■ “LiveDocs” en la página 16
■ “Recursos en línea adicionales” en la página 17
■ “Dónde encontrar documentación sobre otros temas” en la página 18
Archivos de muestra
Hay disponibles numerosos archivos de muestra basados en ActionScript que se instalan con
Flash. Estos archivos muestran cómo funciona el código en un archivo FLA y constituyen con
frecuencia una herramienta de aprendizaje muy útil. En los capítulos de este manual se suele
hacer referencia a estos archivos, pero se recomienda que también se consulte la carpeta de
archivos de muestra del disco duro.
Los archivos de muestra incluyen archivos FLA de aplicaciones que utilizan funcionalidad
común de Flash instalada con Flash. Estas aplicaciones se han diseñado para ayudar a los
nuevos desarrolladores de Flash a adentrarse en las posibilidades de las aplicaciones Flash, así
como para mostrar a los desarrolladores avanzados el modo en que funcionan las funciones de
Flash en su contexto.
Los archivos de origen de muestra centrados en ActionScript se pueden encontrar en la
carpeta Samples del disco duro.
■ En Windows, desplácese a unidad de inicio\Archivos de programa\Macromedia\Flash
8\Samples and Tutorials\Samples\ActionScript\.
■ En Macintosh, desplácese a Disco duro de Macintosh/Applications/Macromedia Flash 8/
Samples and Tutorials/Samples/ActionScript/.
Recursos adicionales15
Puede que encuentre útil los siguientes archivos de muestra centrados en componentes, ya que
contienen gran cantidad de código ActionScript. También se encuentran en la carpeta
Samples del disco duro:
■ En Windows, desplácese a unidad de inicio\Archivos de programa\Macromedia\Flash
8\Samples and Tutorials\Samples\Components\.
■ En Macintosh, desplácese a Disco duro de Macintosh/Applications/Macromedia Flash 8/
Samples and Tutorials/Samples/Components/.
También se pueden encontrar archivos de muestra adicionales para descargar en Internet. La
siguiente página Web contiene vínculos y descripciones de archivos de muestra adicionales:
www.macromedia.com/go/flash_samples_es/
Dónde encontrar archivos PDF o documentación
impresa
Si prefiere leer documentación en formato impreso, puede descargar las versiones en PDF de
cada manual de la Ayuda. Vaya a www.macromedia.com/support/documentation/es/ y
seleccione el producto en el que esté interesado. Puede ver o descargar el archivo PDF o el
vínculo a la versión de LiveDocs del manual.
Normalmente, también puede adquirir la documentación impresa. Para obtener información
actualizada, vaya al sitio de soporte de documentación y seleccione Flash Basic 8 o Flash
Professional 8.
LiveDocs
Se puede acceder a la documentación en el sitio Web de LiveDocs, además de poder hacerlo
desde el panel Ayuda. El sitio Web de LiveDocs contiene todas las páginas de la Ayuda de
Flash y podría contener comentarios que aclarasen, actualizasen o corrigiesen partes de la
documentación. Haga clic en Ver comentarios en LiveDocs en la parte inferior de una página
del panel Ayuda para ver la página equivalente en el sitio Web de LiveDocs. Vaya a http://
livedocs.macromedia.com para ver una lista de la documentación disponible en formato de
LiveDocs.
Escritores técnicos se encargan de supervisar el sitio Web de LiveDocs. Una de las ventajas de
LiveDocs es la posibilidad de ver comentarios que aclaran aspectos de la documentación o
corrigen cualquier errata o problema que haya surgido después de publicar la versión de
software. LiveDocs no es el lugar apropiado para solicitar ayuda como formular preguntas
sobre código que no funciona, realizar comentarios sobre problemas con el software y la
instalación o preguntar cómo crear algo con Flash. Este sitio es para ofrecer comentarios sobre
la documentación (por ejemplo, si se advierte que una frase o párrafo podría aclararse mejor).
16Introducción
Al hacer clic en el botón para añadir un comentario a LiveDocs, existen varios aspectos sobre
los tipos de comentarios que son aceptables en el sistema. Lea atentamente estas directrices, ya
que su comentario podría eliminarse del sitio Web.
Si desea realizar alguna pregunta sobre Flash, hágalo en los foros Web de Macromedia:
www.macromedia.com/go/flash_forum_es. Los foros Web constituyen el mejor lugar para
formular preguntas, ya que están supervisados por numerosos empleados de Macromedia,
voluntarios de Team Macromedia, administradores y miembros de grupos de usuarios de
Macromedia e incluso escritores técnicos.
Los ingenieros no supervisan el sistema de LiveDocs pero sí controlan la lista de Flash Wish.
Si cree que ha encontrado un error en el software o le gustaría solicitar una mejora en Flash,
rellene el formulario en www.macromedia.com/go/wish. Si informa del error o solicita una
mejora en LiveDocs, no se añadirá oficialmente a la base de datos de errores. Debe utilizar el
formulario específico (wishform) si desea que un ingeniero considere el error o la solicitud.
No olvide tener cuidado con los caracteres especiales y los saltos de línea al pegar desde la
Web, incluido desde LiveDocs. Macromedia se ha esforzado al máximo por eliminar todos los
caracteres especiales de los ejemplos de código, pero si tiene problemas al pegar código,
consulte “Copiar y pegar código” en la página 14.
Recursos en línea adicionales
Existen diversos recursos en línea que ofrecen formación, ayuda y asesoramiento a la hora de
aprender a utilizar Macromedia Flash 8. Visite los siguientes sitios Web regularmente para
obtener la información más reciente:
El sitio Web Centro de desarrollo de Macromedia (www.macromedia.com/go/
developer_fl_es) se actualiza regularmente con la última información sobre Flash, además de
consejos de usuarios expertos, temas más complejos, ejemplos, sugerencias, tutoriales (de
incluso varias partes) y otras actualizaciones. Visite el sitio Web regularmente para conocer las
últimas noticias sobre Flash y cómo sacar el máximo partido del programa.
El centro de servicio técnico de Macromedia Flash (www.macromedia.com/go/
flash_support_es) proporciona notas técnicas, documentación actualizada y vínculos a otros
recursos de la comunidad Flash.
El sitio Web Macromedia Weblogs (http://weblogs.macromedia.com) ofrece una lista de
weblogs (también conocidos como blogs) tanto para el personal de Macromedia como para la
comunidad de usuarios.
Recursos adicionales17
Los foros Web de Macromedia (http://webforums.macromedia.com) ofrecen numerosos
foros en los que formular preguntas específicas sobre Flash, sus aplicaciones o el lenguaje
ActionScript. Los foros están supervisados por voluntarios de Team Macromedia y es visitado
con frecuencia por empleados de Macromedia. Si no está seguro de adónde acudir o cómo
resolver un problema, visite un foro de Flash.
El sitio Web Comunidad de Macromedia (www.macromedia.com/community) suele
albergar Macrochats, una serie de presentaciones en directo sobre diversos temas realizadas por
empleados de Macromedia y miembros de la comunidad. Consulte con frecuencia el sitio
Web para obtener la información más reciente y registrarse en los macrochats.
Dónde encontrar documentación sobre otros temas
Los siguientes manuales ofrecen información adicional sobre temas asociados frecuentemente
con ActionScript 2.0:
■ Para obtener información sobre los elementos que componen el lenguaje ActionScript,
consulte la Referencia del lenguaje ActionScript 2.0.
■ Para obtener información sobre cómo trabajar en el entorno de edición de Flash, consulte
Cómo utilizar la Ayuda.
■ Si desea información sobre los componentes, consulte Utilización de componentes.
18Introducción
CAPÍTULO 1
Novedades de Flash 8
ActionScript
Macromedia Flash Basic 8 y Macromedia Flash Professional 8 proporcionan varias mejoras
que facilitan la escritura de scripts más robustos con el lenguaje ActionScript. Las nuevas
funciones, que se describen más adelante en este capítulo, incluyen nuevos elementos de
lenguaje (consulte “Elementos añadidos al lenguaje ActionScript” en la página 22),
herramientas de edición mejoradas (consulte “Cambios de edición de ActionScript” en
la página 28), cambios en el modelo de seguridad y otras mejoras relacionadas con el código
ActionScript en la herramienta de edición.
Para más información, consulte los siguientes temas:
Cambios en el modelo de seguridad para archivos SWF instalados localmente. . 29
Nuevas funciones en ActionScript 2.0 y
Flash 8
1
El lenguaje ActionScript ha crecido y se ha desarrollado desde su introducción hace algunos
años. Con cada nueva versión de Flash se han añadido a ActionScript palabras clave, objetos,
métodos y otros elementos de lenguaje adicionales. Asimismo se han incluido mejoras
relativas a ActionScript en los entornos de edición de Flash 8. Flash Basic 8 y Flash
Professional 8 presentan nuevos elementos de lenguaje para mejorar la expresividad, como
filtros y modos de mezcla, y el desarrollo de aplicaciones, como integración con JavaScript
(ExternalInterface) y entrada y salida de archivos (FileReference y FileReferenceList).
Esta sección proporciona información general sobre los elementos y clases del lenguaje
ActionScript que son nuevos o han cambiado en Flash 8, así como las mejoras relativas a
ActionScript en la herramienta de edición. Para obtener una lista específica de las funciones
añadidas a ActionScript 2.0, consulte “Elementos añadidos al lenguaje ActionScript” en
la página 22. Para utilizar cualquiera de los nuevos elementos del lenguaje en los scripts, debe
utilizar Flash Player 8 (el predeterminado) al publicar los documentos.
19
Las funciones siguientes se añadieron tanto a Flash Basic 8 como a Flash Professional 8 (a
menos que se indique lo contrario):
■ Las mejoras del editor de ActionScript permiten mostrar los caracteres ocultos en los
scripts. Para más información, consulte “Visualización de caracteres ocultos” en
la página 57.
■ Las opciones de depuración se encuentran ahora disponibles en la ventana Script, así como
el panel Acciones, para los archivos ActionScript.
■ Se ha reorganizado el directorio Configuration que incluye los archivos XML y de clases.
Consulte “Archivos de configuración que se instalan con Flash 8” en la página 69 para
obtener más detalles.
■ Puede definir una preferencia para volver a cargar archivos de script modificados mientras
trabaja en una aplicación, lo que le ayuda a evitar trabajar con versiones anteriores de
archivos de script y sobrescribir los que sean más nuevos. Para más información, consulte
“Preferencias de ActionScript” en la página 45.
■ La función de la ventana Script se encuentra disponible en Flash Basic 8 y Flash
Professional 8, lo que indica que puede crear ahora un archivo de ActionScript en cada
programa.
■ El asistente de script (similar al modo Normal en las versiones anteriores de Flash) le ayuda
a codificar sin necesidad de entender la sintaxis. Para más información sobre el asistente de
script, consulte “Asistente de script” en la página 62.
■ Puede cargar nuevos tipos de archivos de imagen en tiempo de ejecución, que incluyen
imágenes JPEG progresivas, así como archivos GIF y PNG no animados. Si carga un
archivo animado, aparece el primer fotograma de la animación.
■ Puede asignar identificadores de vinculación a los archivos de mapas de bits y de sonido
almacenados en la biblioteca, lo que significa que puede asociar imágenes al escenario o
trabajar con estos elementos en bibliotecas compartidas.
■ La caché de mapa de bits permite mejorar el rendimiento de las aplicaciones en tiempo de
ejecución al almacenar en caché una representación de mapa de bits de las instancias.
Puede utilizar código ActionScript para acceder a esta propiedad. Para más información,
consulte “Caché de mapa de bits, desplazamiento y rendimiento” en la página 513.
■ La escala de 9 divisiones permite escalar instancias de clip de película sin ampliar los trazos
que forman el contorno del clip. Puede utilizar código ActionScript para acceder a esta
función en Flash Basic 8 y Flash Professional 8, o bien en la herramienta de edición de
Flash 8. Para más información, consulte “Utilización de escala en 9 divisiones en
ActionScript” en la página 592. Para obtener información sobre el acceso a la escala de 9
divisiones en la herramienta de edición, consulte “La escala en 9 divisiones y los símbolos
de clip de película” en la página 90 en Utilización de Flash.
20Novedades de Flash 8 ActionScript
■ Ahora puede añadir información de metadatos a los archivos FLA en el cuadro de diálogo
Configuración de publicación. Con el cuadro de diálogo se puede añadir un nombre y una
descripción al archivo FLA para ayudar a aumentar la visibilidad en la búsqueda en línea.
■ Se ha mejorado el panel Cadenas a fin de admitir texto con varias líneas en el campo
Cadena y un archivo XML de idioma. Para más información, consulte “Panel Cadenas” en
la página 482.
■ Se ha incorporado en Flash Player un nuevo recolector de datos innecesarios, que utiliza
un recolector incremental para mejorar el rendimiento.
■ Se ha mejorado el flujo de trabajo para crear aplicaciones accesibles. Flash Player 8 ya no
precisa que los desarrolladores añadan todos los objetos al índice de tabulación para que el
lector de pantalla lea correctamente el contenido. Para más información sobre el índice de
tabulación, consulte
(propiedad MovieClip.tabIndex)
tabIndex (propiedad Button.tabIndex), tabIndex
y tabIndex (propiedad TextField.tabIndex)
en Referencia del lenguaje ActionScript 2.0.
■ Flash Player ha mejorado la seguridad de archivos local, con seguridad adicional al ejecutar
archivos SWF en el disco duro. Para obtener información sobre la seguridad de archivos
local, consulte “Seguridad de archivos local y Flash Player” en la página 717.
■ Con el código ActionScript, puede utilizar la API de dibujo para controlar el estilo de línea
de los trazos que dibuje. Para más información sobre los nuevos estilos de línea, consulte
“Utilización de estilos de línea” en la página 581.
■ Con el código ActionScript, puede utilizar la API de dibujo para crear degradados más
complejos con los que rellenar formas. Para obtener información sobre los rellenos de
degradados, consulte “Utilización de rellenos con degradado complejos” en la página 580.
■ Puede utilizar código ActionScript para aplicar muchos filtros a objetos en el escenario
(como instancias de clip de película). Para obtener información sobre los filtros y
ActionScript, consulte “Utilización de filtros con código ActionScript” en la página 540.
■ Puede utilizar la API de FileReference y FileReferenceList para cargar archivos en el
servidor. Para más información, consulte “Carga y descarga de archivos” en la página 682.
■ Puede utilizar código ActionScript para acceder a nuevas y avanzadas formas de aplicar y
manipular los colores. Para más información, consulte “Configuración de valores de color”
en la página 606 y
ColorTransform (flash.geom.ColorTransform) en Referencia del
lenguaje ActionScript 2.0.
■ Se han aplicado numerosas mejoras al manejo del texto, incluidas nuevas opciones,
propiedades y parámetros en las clases TextField y TextFormat. Para más información,
consulte
TextField y TextFormat en Referencia del lenguaje ActionScript 2.0.
Nuevas funciones en ActionScript 2.0 y Flash 821
■ El código ActionScript se puede utilizar para acceder a funciones de suavizado avanzado
(FlashType). Para más información, consulte “Representación de fuentes y texto
suavizado” en la página 434.
■ Puede eliminar archivos ASO al probar la aplicación. Seleccione Control > Eliminar
archivos ASO o Control > Eliminar archivos ASO y probar película en la herramienta de
edición. Para más información, consulte “Utilización de archivos ASO” en la página 254.
Para obtener una lista de clases, elementos de lenguaje, métodos y propiedades específicas
añadidas a ActionScript 2.0 en Flash 8, consulte “Elementos añadidos al lenguaje
ActionScript” en la página 22.
Elementos añadidos al lenguaje ActionScript
En esta sección se enumeran los nuevos elementos y clases del lenguaje ActionScript que son
nuevos o se han modificado en Flash 8. Las siguientes clases y elementos de lenguaje son
nuevas adiciones o acaban de admitirse en Flash Player 8.
Las siguientes clases se añadieron a ActionScript 2.0 en Flash 8:
■ La clase BevelFilter (en el paquete flash.filters) permite añadir efectos de bisel a los objetos.
■ La clase BitmapData (en el paquete flash.display) permite crear y manipular imágenes de
mapas de bits transparentes u opacas de tamaño arbitrario.
■ La clase BitmapFilter (en el paquete flash.display) es una clase base para todos los efectos
de filtro.
■ La clase BlurFilter permite aplicar desenfoques a los objetos de Flash.
■ La clase ColorMatrixFilter (en el paquete flash.filters) permite aplicar transformaciones a
los valores de colores ARGB y alfa.
■ La clase ColorTransform (en el paquete flash.geom) permite ajustar valores de colores en
los clips de película. La clase Color deja de admitirse en favor de esta clase.
■ La clase ConvolutionFilter (en el paquete flash.filters) permite aplicar efectos de filtro de
convolución de matrices.
■ La clase DisplacementMapFilter (en el paquete flash.filters) permite utilizar valores de
píxel de un objeto BitmapData para realizar el desplazamiento de un objeto.
■ La clase DropShadowFilter (en el paquete flash.filters) permite añadir efectos de sombras
sesgadas a los objetos.
■ La clase ExternalInterface (en el paquete flash.external) permite comunicarse mediante
ActionScript con el contenedor de Flash Player (el sistema que contiene la aplicación
Flash, como un navegador con JavaScript o la aplicación de escritorio).
22Novedades de Flash 8 ActionScript
■ La clase FileReference (en el paquete flash.net) permite cargar y descargar archivos entre el
equipo del usuario y un servidor.
■ La clase FileReferenceList (en el paquete flash.net) permite seleccionar uno o más archivos
para cargar.
■ La clase GlowFilter (en el paquete flash.filters) permite añadir efectos de iluminación a los
objetos.
■ La clase GradientBevelFilter (en el paquete flash.filters) permite añadir efectos de biseles
degradados a los objetos.
■ La clase GradientGlowFilter (en el paquete flash.filters) permite añadir efectos de
iluminación degradada a los objetos.
■ La clase IME (en la clase System) permite manipular el editor de método de entrada
(IME) del sistema operativo en Flash Player.
■ La clase Locale (en el paquete mx.lang) permite controlar cómo aparece texto en varios
idiomas en un archivo SWF.
■ La clase Matrix (en el paquete flash.geom) representa una matriz de transformación que
determina cómo asignar puntos de un espacio de coordenadas a otro.
■ La clase Point (en el paquete flash.geom) representa una ubicación en un sistema de
coordenadas bidimensional (x representa el eje horizontal e y el eje vertical).
■ La clase Rectangle (en el paquete flash.geom) permite crear y modificar objetos Rectangle.
■ La clase TextRenderer (en el paquete flash.text) proporciona la funcionalidad para el
suavizado de las fuentes incorporadas.
■ La clase Transform (en el paquete flash.geom) recopila datos sobre las transformaciones de
color y manipulaciones de coordenadas que se aplican a una instancia MovieClip.
NOTA
Se ha añadido compatibilidad oficial para la clase AsBroadcaster en Flash 8.
Los nuevos elementos de lenguaje, métodos y funciones añadidas a las clases existentes en
ActionScript incluyen:
■ La función global showRedrawRegions proporciona la capacidad al reproductor
depurador para que perfile las regiones de la pantalla que se están dibujando de nuevo (es
decir, las regiones sucias que se están actualizando). La función dispone del reproductor
que muestra lo que se ha vuelto a dibujar, pero no le permite controlar estas regiones.
■ La propiedad blendMode de la clase Button, que establece el modo de mezcla para la
instancia de botón.
■ La propiedad cacheAsBitmap de la clase Button, que permite guardar en caché el objeto
como una representación interna de mapa de bits de la instancia.
Nuevas funciones en ActionScript 2.0 y Flash 823
■ La propiedad filters de la clase Button, que es una matriz indexada que contiene cada
objeto de filtro asociado al botón.
■ La propiedad scale9Grid de la clase Button, que es la región rectangular que define
nueve regiones de escala de la instancia.
■ La propiedad hasIME de la clase System.capabilities, que indica si el sistema tiene un
editor de método de entrada (IME) instalado.
■ La propiedad getUTCYear de la clase Date, que devuelve el año de esta fecha, según la
hora universal.
■ El método isAccessible() de la clase Key devuelve un valor booleano que indica si otros
archivos SWF pueden acceder a la última tecla pulsada, según las restricciones de
seguridad.
■ El controlador de eventos onHTTPStatus de la clase LoadVars devuelve el código de estado
que se devuelve del servidor (por ejemplo, el valor 404 para la página no encontrada). Para
más información, consulte
onHTTPStatus (controlador XML.onHTTPStatus) en
Referencia del lenguaje ActionScript 2.0.
■ El método attachBitmap() de la clase MovieClip, que asocia una imagen de mapa de
bits a un clip de película. Para más información, consulte
(flash.display.BitmapData)
■ El método beginBitmapFill() de la clase MovieClip, que asocia un clip de película a
en Referencia del lenguaje ActionScript 2.0.
BitmapData
una imagen de mapa de bits.
■ Los parámetros spreadMethod, interpolationMethod y focalPointRatio del método
beginGradientFill() en la clase MovieClip. Este método rellena un área de dibujo con
una imagen de mapa de bits y el mapa de bits se puede repetir o incluir en un mosaico
para rellenar el área.
■ La propiedad blendMode de la clase MovieClip, que permite establecer el modo de mezcla
para la instancia.
■ La propiedad cacheAsBitmap de la clase MovieClip, que permite guardar en caché el
objeto como una representación interna de mapa de bits de la instancia.
■ La propiedad filters de la clase MovieClip, que es una matriz indexada que contiene
cada objeto de filtro asociado actualmente a la instancia.
■ El método getRect() de la clase MovieClip, que devuelve las propiedades que son los
valores mínimo y máximo de las coordenadas de la instancia especificada.
■ El método lineGradientStyle() de la clase MovieClip, que especifica un estilo de línea
de degradado que utiliza Flash al dibujar una ruta.
24Novedades de Flash 8 ActionScript
■ Los parámetros pixelHinting, noScale, capsStyle, jointStyle y miterLimit del
método
lineStyle() en la clase MovieClip. Estos parámetros especifican tipos de estilos
de línea que se pueden utilizar al dibujar líneas.
■ La propiedad opaqueBackground de la clase MovieClip, que establece el color del fondo
opaco (no transparente) del clip de película con el color que especifica el valor
hexadecimal RGB.
■ La propiedad scale9Grid de la clase MovieClip, que es la región rectangular que define
nueve regiones de escala de la instancia.
■ La propiedad scrollRect de la clase MovieClip, que permite desplazar rápidamente el
contenido del clip de película y abrir una ventana que muestre mayor cantidad de
contenido.
■ La propiedad transform de la clase MovieClip, que permite fijar la configuración en
relación a la matriz, transformación de color y límites de píxel de un clip de película. Para
más información, consulte
Transform (flash.geom.Transform) en Referencia del
lenguaje ActionScript 2.0.
■ El parámetro status del controlador de eventos MovieClipLoader.onLoadComplete
devuelve el código de estado que se devuelve del servidor (por ejemplo, el valor 404 para la
página no encontrada). Para más información, consulte
eventos MovieClipLoader.onLoadComplete)
onLoadComplete (detector de
en Referencia del lenguaje ActionScript
2.0.
■ El controlador de eventos onLoadError de la clase MovieClipLoader se invoca cuando no
se carga un archivo cargado con
■ El parámetro secure del método SharedObject.getLocal() determina si el acceso a
MovieClipLoader.loadClip().
este objeto compartido se restringe a los archivos SWF transmitidos a través de una
conexión HTTPS. Para más información, consulte
SharedObject.getLocal)
■ La propiedad sandboxType de la clase System.security indica el tipo de modelo de
en Referencia del lenguaje ActionScript 2.0.
getLocal (método
seguridad del entorno local en el que está funcionando el archivo SWF que realiza la
llamada. Para más información, consulte
security.sandboxType)
■ La propiedad antiAliasType de la clase TextField, que establece el tipo de suavizado que
en Referencia del lenguaje ActionScript 2.0.
sandboxType (propiedad
utiliza para la instancia TextField.
■ La propiedad filters de la clase TextField, que es una matriz indexada que contiene cada
objeto de filtro asociado actualmente a la instancia TextField.
Nuevas funciones en ActionScript 2.0 y Flash 825
■ La propiedad gridFitType de la clase TextField, que establece el tipo de ajuste de
cuadrícula que utiliza para la instancia. Para obtener información sobre el ajuste de
cuadrícula y TextField.gridFitType, consulte
TextField.gridFitType)
■ La propiedad sharpness de la clase TextField, que establece la nitidez de los bordes de
en Referencia del lenguaje ActionScript 2.0.
glifo para la instancia TextField. Debe establecer el método
gridFitType (propiedad
antiAliasType() como
avanzado si utiliza esta propiedad.
■ La propiedad thickness de la clase TextField, que establece el grosor de los bordes de
glifo en la instancia TextField. Debe establecer el método
antiAliasType() como
avanzado si utiliza esta propiedad.
■ El valor justify para la propiedad align de la clase TextFormat, que permite justificar
un párrafo especificado.
■ La propiedad indent de la clase TextFormat, que permite utilizar valores negativos.
■ La propiedad kerning de la clase TextFormat, que permite activar o desactivar el ajuste
entre caracteres para el objeto TextFormat.
■ La propiedad leading de la clase TextFormat, que permite utilizar el interlineado
negativo, de modo que el espacio entre líneas es menor que la altura del texto. De este
modo, puede aproximar las líneas de texto en las aplicaciones.
■ La propiedad letterSpacing de la clase TextFormat, que permite especificar la cantidad
de espacio distribuido de forma uniforme entre los caracteres.
■ La propiedad _alpha de la clase Video, que es la cantidad especificada de transparencia
para el objeto de vídeo.
■ La propiedad _height de la clase Video, que indica la altura de la instancia de vídeo.
■ La propiedad _name de la clase Video, que indica el nombre de la instancia de vídeo.
■ La propiedad _parent de la clase Video, que indica la instancia de clip de película u
objeto que contiene la instancia de vídeo.
■ La propiedad _rotation de la clase Video, que permite establecer la cantidad de rotación
en grados de la instancia de vídeo.
■ La propiedad _visible de la clase Video class, que permite establecer la visibilidad de una
instancia de vídeo.
■ La propiedad _width de la clase Video, que permite establecer la anchura de la instancia
de vídeo.
■ La propiedad _x de la clase Video, que permite establecer la coordenada x de la instancia
de vídeo.
■ La propiedad _xmouse de la clase Video, que permite establecer la coordenada x de la
posición del puntero del ratón.
26Novedades de Flash 8 ActionScript
■ La propiedad _xscale de la clase Video, que permite establecer el porcentaje de la escala
horizontal de la instancia de vídeo.
■ La propiedad _y de la clase Video, que permite establecer la coordenada y de la instancia
de vídeo.
■ La propiedad _ymouse de la clase Video, que permite establecer la coordenada y de la
posición del puntero del ratón.
■ La propiedad _yscale de la clase Video, que permite establecer el porcentaje de la escala
vertical de la instancia de vídeo.
■ El controlador de eventos onHTTPStatus de la clase XML devuelve el código de estado
que se devuelve del servidor (por ejemplo, el valor 404 para la página no encontrada). Para
más información, consulte
onHTTPStatus (controlador XML.onHTTPStatus) en
Referencia del lenguaje ActionScript 2.0.
■ La propiedad localName de la clase XMLNode, que devuelve el nombre completo del
objeto de nodo XML (incluidos tanto el prefijo como el nombre local).
■ La propiedad namespaceURI de la clase XMLNode, que lee el URI del espacio de
nombres en el que se resuelve el prefijo del nodo XML. Para más información, consulte
namespaceURI (propiedad XMLNode.namespaceURI) en Referencia del lenguaje
ActionScript 2.0.
■ La propiedad prefix de la clase XMLNode, que lee el prefijo del nombre del nodo.
■ El método getNamespaceForPrefix() de la clase XMLNode, que devuelve el URI del
espacio de nombres asociado al prefijo especificado para el nodo.
■ El método getPrefixForNamespace de la clase XMLNode, que devuelve el prefijo
asociado al URI del espacio de nombres especificado para el nodo.
Elementos de lenguaje no admitidos
Algunos elementos de lenguaje no se admiten en Flash Player 8. Para obtener una lista de los
elementos de lenguaje no admitidos y alternativas que pueden utilizarse en Flash Player 8,
consulte las siguientes secciones en Referencia del lenguaje ActionScript 2.0:
■ Resumen de clases desfasadas
■ Resumen de funciones desfasadas
■ Resumen de propiedades desfasadas
■ Resumen de operadores desfasados
Nuevas funciones en ActionScript 2.0 y Flash 827
Cambios de edición de ActionScript
El editor de ActionScript en el panel Acciones y la ventana Script se ha actualizado de varias
formas para que resulte más robusto y fácil de utilizar que las versiones anteriores de la
herramienta. En esta sección se ofrece un resumen de dichos cambios.
Ver caracteres ocultos Ahora puede utilizar el menú emergente Opciones de los paneles
Script, Depurador y Salida para ver u ocultar caracteres cuando escribe archivos de script en el
panel Acciones o la ventana Script. Para obtener información sobre esta función, consulte
“Visualización de caracteres ocultos” en la página 57.
Asistente de script añadido al panel Acciones En las versiones anteriores de Flash, podía
trabajar en el panel Acciones en modo Normal (se especificaban las opciones y los parámetros
para crear el código) o en modo Experto (se añadían comandos directamente en el panel
Script). Estas opciones no estaban disponibles en Flash MX 2004 ni en Flash MX Professional
2004. Sin embargo, en Flash Basic 8 y Flash Professional 8, puede trabajar en el modo de asistente de script, que es similar al modo normal existente en versiones anteriores de Flash
(pero más robusto). Para obtener información sobre el asistente de script, consulte el Capítulo
13, “Escritura de ActionScript con el asistente de script” en Utilización de Flash. Para realizar
un tutorial sobre el asistente de script, consulte el Capítulo 13, “Creación de un evento
startDrag/stopDrag con el Asistente de script” en Utilización de Flash.
Volver a cargar archivos modificados Puede volver a cargar archivos de script modificados
al trabajar en una aplicación. Aparece un mensaje de advertencia en el que se le solicita que
vuelva a cargar los archivos de script modificados asociados con la aplicación con la que está
trabajando. Esta función resulta especialmente beneficiosa para equipos que trabajan en
aplicaciones al mismo tiempo, ya que ayuda a evitar que se trabaje con scripts desactualizados
o se sobrescriban versiones más recientes de un script. Si se ha movido o eliminado un archivo
de script, aparece un mensaje de advertencia en el que se le indica que guarde los archivos si es
necesario. Para más información, consulte “Preferencias de ActionScript” en la página 45.
28Novedades de Flash 8 ActionScript
Cambios en el modelo de seguridad para
archivos SWF instalados localmente
Flash Player 8 cuenta con un nuevo modelo de seguridad mejorado en el que las aplicaciones
de Flash y los archivos SWF de un equipo local pueden comunicarse con Internet y el sistema
de archivos local en vez de ejecutarse desde un servidor Web remoto. Al desarrollar una
aplicación de Flash, debe indicar si se permite que el archivo SWF se comunique con una red
o con un sistema de archivos local.
NOTA
En esta descripción, un archivo SWF local debe entenderse como un archivo SWF
instalado localmente en el equipo de un usuario, no como archivo servido desde un sitio
Web, y que no incluye archivos de proyector (EXE).
En las versiones anteriores de Flash Player, los archivos SWF locales podían interactuar con
otros archivos SWF y cargar datos de otro equipo local o remoto sin establecer la
configuración de seguridad. En Flash Player 8, un archivo SWF no puede realizar conexiones
con el sistema de archivos local y la red (como Internet) en la misma aplicación sin que se haya
establecido un parámetro de seguridad. Se trata de una medida de seguridad; de este modo, un
archivo SWF no puede leer archivos del disco duro ni enviar el contenido de dichos archivos
por Internet.
Esta restricción de seguridad afecta a todo el contenido implementado localmente, tanto si es
contenido antiguo (un archivo FLA creado en una versión anterior de Flash) como creado en
Flash 8. Con Flash MX 2004 o una herramienta de edición anterior, podía probar una
aplicación de Flash que se ejecutara localmente y también acceder a Internet. En Flash Player
8, esta aplicación solicita ahora al usuario que dé su permiso para que pueda comunicarse con
Internet.
Cuando se prueba un archivo en el disco duro, hay varios pasos para determinar si el archivo
es un documento local de confianza (seguro) o un documento que potencialmente no es de
confianza (no seguro). Si crea el archivo en el entorno de edición de Flash (por ejemplo,
cuando selecciona Control > Probar película), el archivo es de confianza porque se encuentra
dentro del entorno de prueba.
En Flash Player 7 y en versiones anteriores, los archivos SWF locales tenían permisos para
acceder al sistema de archivos local y a la red. En Flash Player 8, los archivos SWF locales
tienen tres niveles de permiso:
■ Acceder al sistema de archivos local solamente (el nivel predeterminado). El archivo SWF
local puede leer desde las rutas de red de convención de nomenclatura universal (UNC) y
sistema de archivos local y no se puede comunicar con Internet.
Cambios en el modelo de seguridad para archivos SWF instalados localmente29
■ Acceder sólo a la red. El archivo SWF local puede acceder sólo a la red (como Internet) y
no al sistema de archivos local donde está instalado el archivo SWF.
■ Acceder tanto al sistema de archivos local como a la red. El archivo SWF local puede leer
del sistema de archivos local en el que está instalado el archivo, leer y escribir en cualquier
servidor que le conceda permiso y usar scripts con otros archivos SWF de la red o del
sistema de archivos local que le conceda permiso.
Para más detalles sobre cada nivel de permiso, consulte “Seguridad de archivos local y Flash
Player” en la página 717.
Existen también leves cambios en System.security.allowDomain y mejoras en
System.security.allowInsecureDomain. Para más información sobre la seguridad de archivos
local, consulte el Capítulo 17, “Aspectos básicos de la seguridad”.
30Novedades de Flash 8 ActionScript
CAPÍTULO 2
Escritura y edición en
ActionScript 2.0
Al escribir código ActionScript en Macromedia Flash Basic 8 o Macromedia Flash
Professional 8, se utiliza el panel Acciones o la ventana Script. El panel Acciones y la ventana
Script contienen un editor de código completo (denominado editor de ActionScript) que
incluye sugerencias y consejos para el código, coloreado y aplicación de formato del código,
resaltado de sintaxis, revisión de sintaxis, depuración, números de línea, ajuste de texto y
compatibilidad con Unicode en dos vistas distintas. Para más información sobre el editor de
ActionScript, consulte “Utilización del panel Acciones y la ventana Script” en la página 36.
Puede utilizar uno de dos métodos existentes para escribir código ActionScript en Flash.
Puede escribir scripts que forman parte del documento de Flash (es decir, scripts incorporados
en el archivo FLA), o bien escribir scripts externos (scripts o clases almacenados en archivos
externos). Sin embargo, no puede utilizar el panel Acciones para escribir scripts externos.
Al escribir scripts en un archivo FLA, se utiliza el editor de ActionScript del panel Acciones.
Este panel contiene el editor de ActionScript en un panel Script y herramientas para facilitar la
escritura de scripts. Entre estas herramientas, se incluye la caja de herramientas Acciones, que
le proporciona acceso rápido a los principales elementos del lenguaje ActionScript, el
navegador de scripts, que le ayuda a desplazarse por los scripts del documento, y el modo de
asistente de script, que le solicita el elemento necesario para crear scripts. Para más
información sobre el panel Acciones, consulte “Panel Acciones” en la página 37. Para más
información sobre el asistente de script, consulte “Asistente de script” en la página 62.
Cuando necesite crear un script externo, deberá utilizar la ventana Script del editor de
ActionScript para crear un nuevo archivo ActionScript. (También puede utilizar su editor de
texto favorito para crear un archivo AS externo.) En la ventana Script, el editor de
ActionScript incluye funciones de ayuda para el código, como sugerencias y colores de código
o revisión de la sintaxis, entre otras, del mismo modo que el panel Acciones. Para más
información sobre la ventana Script, consulte “Ventana Script” en la página 38.
2
31
Flash proporciona ayuda adicional para crear scripts a través de comportamientos. Los
comportamientos son funciones predefinidas de ActionScript que puede asociar a los objetos
del documento de Flash y que evitan que tenga que crear el código ActionScript
manualmente. Para más información sobre comportamientos, consulte “Comportamientos”
en la página 65.
Para más información sobre el control de eventos, consulte las secciones siguientes:
En Macromedia Flash Basic 8 y Macromedia Flash Professional 8, el código ActionScript se
ejecuta cuando se produce un evento: por ejemplo, cuando se carga un clip de película,
cuando se entra en un fotograma clave de la línea de tiempo o cuando el usuario hace clic en
un botón. Los eventos puede accionarlos el usuario o el sistema. Los usuarios hacen clic en
botones y presionan teclas; el sistema acciona eventos cuando se cumplen condiciones
específicas o finalizan procesos (se carga el archivo SWF, la línea de tiempo llega a un
determinado fotograma, termina de cargarse un gráfico, etc.).
Deberá escribir un controlador de evento que responda con una acción cuando tenga lugar el
evento. Comprender cuándo y dónde tienen lugar los eventos le ayudará a determinar cómo y
dónde deberá responder al evento con una acción y qué herramientas de ActionScript utilizará
en cada caso. Para más información, consulte “Escritura de scripts para controlar eventos” en
la página 35.
Los eventos pueden agruparse en varias categorías: eventos de ratón y de teclado, que tienen
lugar cuando un usuario interactúa con la aplicación Flash a través del ratón y el teclado;
eventos de clip, que se producen en los clips de película y los eventos de fotograma, que tienen
lugar en los fotogramas de la línea de tiempo.
Para obtener información sobre los tipos de scripts que puede escribir para controlar eventos,
consulte “Escritura de scripts para controlar eventos” en la página 35.
32Escritura y edición en ActionScript 2.0
Eventos de ratón y teclado
Un usuario que interactúa con la aplicación o el archivo SWF desencadena eventos de ratón y
de teclado. Por ejemplo, cuando el usuario pasa el puntero por encima de un botón, tiene
lugar el evento
lugar el evento
on (keyPress). Puede escribir código en un fotograma o asociar scripts a una instancia para
controlar estos eventos y añadir toda la interactividad que desee.
Button.onRollOver o on (rollOver); cuando hace clic en un botón, tiene
Button.onRelease; si se presiona una tecla del teclado, tiene lugar el evento
Eventos de clip
Dentro de un clip de película, puede reaccionar a una serie de eventos de clip que se
desencadenan cuando el usuario entra o sale de la escena o interactúa con la misma mediante
el ratón o el teclado. Por ejemplo, podría cargar un archivo SWF o de imagen JPG externo en
el clip de película cuando el usuario entrase en la escena o permitir que los movimientos del
ratón del usuario cambiasen de posición los elementos de la escena.
Eventos de fotograma
En una línea de tiempo principal o de clip de película, un evento de sistema tiene lugar
cuando la cabeza lectora entra en un fotograma clave (esto se conoce como evento de fotograma). Los eventos de fotograma son útiles para desencadenar acciones en función del
paso del tiempo (el avance por la línea de tiempo) o para interactuar con elementos que
actualmente están visibles en el escenario. Al añadir un script a un fotograma clave, el script se
ejecuta cuando se llega al fotograma clave durante la reproducción. Un script asociado a un
fotograma se denomina script de fotograma.
Uno de los usos más habituales de los scripts de fotograma es para detener la reproducción
cuando se alcanza un determinado fotograma clave. Esto se consigue mediante la función
stop(). Se selecciona un fotograma clave y luego se añade la función stop() como elemento
de script en el panel Acciones.
Una vez que haya detenido el archivo SWF en un determinado fotograma clave, deberá
realizar alguna acción. Por ejemplo, podría utilizar un script de fotograma para actualizar
dinámicamente el valor de una etiqueta, para gestionar la interacción de los elementos del
escenario, etc.
ActionScript y eventos33
Organización de código ActionScript
Puede asociar scripts a fotogramas clave y a instancias de objetos (clips de película, botones y
otros símbolos). Sin embargo, si dispersa el código ActionScript entre muchos fotogramas
clave e instancias de objetos, la depuración de la aplicación resultará mucho más compleja.
Además, resultará imposible que varias aplicaciones de Flash compartan el mismo código.
Por consiguiente, es importante seguir las recomendaciones de codificación al crear código
ActionScript en Flash.
En lugar de asociar los scripts a elementos como fotogramas clave, clips de película y botones,
debe responder a los eventos llamando a funciones que residan en una ubicación central. Uno
de los métodos consiste en adjuntar código ActionScript incorporado al primer o al segundo
fotograma de la línea de tiempo cuando sea posible, de manera que no tenga que buscar por
todo el archivo FLA para localizar todo el código. Otra práctica habitual consiste en crear una
capa llamada actions y colocar el código ActionScript en ella.
Al asociar todos los scripts a elementos individuales, está incorporando todo el código en el
archivo FLA. Si es importante que el código puedan compartirlo otras aplicaciones de Flash,
utilice la ventana Script o su editor de texto preferido para crear un archivo ActionScript (AS)
externo.
Al crear un archivo externo, consigue que el código sea más modular y esté mejor organizado.
Conforme crezca el proyecto, observará cómo este enfoque resulta mucho más útil de lo que
en un principio pudiera imaginar. Un archivo externo facilita la depuración y el control del
código fuente si trabaja en un proyecto con otros desarrolladores.
Para utilizar el código ActionScript contenido en un archivo AS externo, deberá crear un
script dentro del archivo FLA y luego utilizar la sentencia
que ha guardado externamente, como se muestra en el ejemplo siguiente:
#include "../core/Functions.as"
#include para acceder al código
34Escritura y edición en ActionScript 2.0
También puede utilizar ActionScript 2.0 para crear clases personalizadas. Debe almacenar las
clases personalizadas en archivos AS externos y utilizar sentencias
que las clases se exporten al archivo SWF, en lugar de utilizar sentencias
import en un script para
#include. Para más
información sobre la escritura de archivos de clases, consulte “Escritura de archivos de clases
personalizadas” en la página 205 y “Importación de archivos de clases” en la página 209 sobre
la importación de archivos de clases. También puede utilizar componentes (clips de película
creados previamente) para compartir código y funcionalidad como, por ejemplo, scripts y
elementos de la interfaz de usuario.
NOTA
El código ActionScript de los archivos externos se compila en un archivo SWF cuando
se publica, se exporta o se depura un archivo FLA. Por lo tanto, si realiza modificaciones
en un archivo externo deberá guardarlo y volver a compilar todos los archivos FLA que
lo utilizan.
Al escribir código ActionScript en Flash 8, se utiliza el panel Acciones, la ventana Script, o
ambos. La conveniencia de uno u otro vendrá determinada por la forma en que responda a los
eventos, cómo organice el código y, por encima de todo, las prácticas de codificación más
recomendables.
Para más información sobre prácticas recomendadas y convenciones de codificación, consulte
“Convenciones de codificación de ActionScript” en la página 790.
Al utilizar comportamientos, que son funciones de ActionScript predefinidas (consulte
“Comportamientos” en la página 65), se deben tener en cuenta otros problemas de flujo de
trabajo y organización del código.
Escritura de scripts para controlar eventos
La escritura de código de eventos se puede dividir en dos categorías principales: los eventos
que tienen lugar en la línea de tiempo (en fotogramas clave) y los que tienen lugar en
instancias de objeto (clips de película, botones y otros componentes). La interactividad de la
aplicación o archivo SWF puede distribuirse entre los numerosos elementos que integran el
proyecto y es posible que tenga la tentación de añadir scripts directamente a estos elementos.
Sin embargo, Macromedia recomienda no añadir scripts directamente a estos elementos
(fotogramas clave y objetos). Por el contrario, debe responder a los eventos llamando a
funciones que residen en una ubicación central, como se describe en “Organización de código
ActionScript”.
Organización de código ActionScript35
Utilización del panel Acciones y la
ventana Script
Para crear scripts en un archivo FLA, se introduce código ActionScript directamente en el
panel Acciones. Para crear scripts externos que incluirá o importará a la aplicación, puede
utilizar la ventana Script (Archivo > Nuevo y seleccione Archivo ActionScript) o su editor de
texto preferido.
Cuando se utiliza el panel Acciones o la ventana Script, se utilizan las funciones del editor de
ActionScript para escribir, aplicar formato y editar el código. Tanto el panel Acciones como la
ventana Script cuentan con un panel Script (que es donde se escribe el código) y la caja de
herramientas Acciones. El panel Acciones ofrece algunas funciones más de ayuda para el
código que la ventana Script. Flash ofrece estas funciones en el panel Acciones porque resultan
especialmente útiles en el contexto de edición de ActionScript dentro de un archivo FLA.
Para mostrar el panel Acciones, realice uno de los siguientes procedimientos:
■ Seleccione Ventana > Acciones.
■ Presione F9.
Para mostrar la ventana Script, realice uno de los siguientes procedimientos:
■ Para empezar a escribir un nuevo script, seleccione Archivo > Nuevo y elija Archivo
ActionScript.
■ Para abrir un script existente, seleccione Archivo > Abrir y, a continuación, abra un
archivo AS.
■ Para editar un script que ya está abierto, haga clic en la ficha de documento que muestra el
nombre del script.
Para más información, consulte los temas siguientes:
■ “Panel Acciones” en la página 37
■ “Ventana Script” en la página 38
36Escritura y edición en ActionScript 2.0
Panel Acciones
El panel Acciones permite crear código ActionScript en un documento de Flash (archivo
FLA). Este panel consta de tres paneles, cada uno de los cuales le facilita la creación y gestión
de los scripts.
Caja de
herramientas
Acciones
Caja de herramientas Acciones Se utiliza para examinar una lista de elementos del
Navegador de scriptsPanel Script
lenguaje ActionScript ordenados por categorías (funciones, clases, tipos, etc.) y luego
insertarlos en el panel Script. Para insertar un elemento de script en el panel Script, haga
doble clic en él o arrástrelo directamente al panel Script. También puede añadir elementos
del lenguaje a los scripts mediante el botón Añadir (+) de la barra de herramientas del
panel Acciones. Para más información, consulte “Barras de herramientas del panel
Acciones y la ventana Script” en la página 41.
Navegador de scripts Muestra una lista jerárquica de elementos de Flash (clips de
película, fotogramas y botones) que contienen scripts. Utilice el navegador de scripts para
desplazarse rápidamente por todos los scripts del documento de Flash.
Si hace clic en un elemento del navegador de scripts, el script asociado con ese elemento
aparecerá en el panel Script y la cabeza lectora se desplazará a esa posición en la línea de
tiempo. Si hace doble clic en un elemento del navegador de scripts, el script quedará fijado
(bloqueado en su sitio). Para más información, consulte “Fijación de scripts en el panel
Acciones” en la página 63.
Menú emergente
Panel Acciones37
Panel Script En este panel es donde se escribe el código. El panel Script ofrece
herramientas para crear scripts en un editor completo (denominado editor de ActionScript)
que incluye aplicación de formato y revisión de la sintaxis del código, sugerencias o
consejos sobre códigos, colores para el código y otras funciones que simplifican la creación
de scripts. Para más información, consulte “Utilización del panel Acciones y la ventana
Script” en la página 36.
Para obtener información sobre cada uno de los botones de la barra de herramientas del
panel Acciones, consulte “Codificación en el panel Acciones y la ventana Script” en
la página 40. Para más información sobre las funciones del panel Acciones, consulte los
temas siguientes:
■“Barras de herramientas del panel Acciones y la ventana Script” en la página 41
■“Opciones de edición de ActionScript” en la página 43
■“Sugerencias o consejos sobre códigos en Flash” en la página 47
■“Aplicación de formato al código” en la página 53
■“Utilización del resaltado de sintaxis” en la página 55
■“Utilización de números de línea y ajuste de texto” en la página 56
■“Utilización de las teclas de método abreviado de Esc” en la página 56
■“Visualización de caracteres ocultos” en la página 57
■“Utilización de la herramienta Buscar” en la página 58
■“Comprobación de la sintaxis y la puntuación” en la página 59
■“Importación y exportación de scripts” en la página 60
Ventana Script
Puede escribir y editar código ActionScript en la ventana Script al crear un nuevo archivo
ActionScript, Flash Communication o Flash JavaScript. La ventana Script se utiliza para
escribir y editar archivos de script externos e incluye color para la sintaxis, sugerencias o
consejos sobre códigos y otras opciones del editor.
En la ventana Script, puede crear código ActionScript externo, comunicación de ActionScript
y archivos JavaScript de Flash. En función del tipo de archivo de script externo que cree, la
caja de herramientas Acciones ofrece la lista completa de elementos del lenguaje disponibles
para cada uno de ellos.
Al utilizar la ventana Script, observará que algunas de las funciones de ayuda para el código,
como el navegador de scripts, el asistente de script y los comportamientos, no están
disponibles. Esto se debe a que estas funciones sólo son útiles en el contexto de creación de un
documento de Flash, no al crear un archivo de script externo.
38Escritura y edición en ActionScript 2.0
También observará que muchas de las opciones disponibles en el panel Acciones no lo están en
la ventana Script. La ventana Script admite las siguientes opciones de editor: la caja de
herramientas Acciones, buscar y reemplazar, revisión de sintaxis, aplicación de formato
automático, sugerencias o consejos sobre códigos y opciones de depuración (sólo en archivos
ActionScript). Además, la ventana Script permite la visualización de números de línea y
caracteres ocultos y el ajuste de texto.
Para ver la ventana Script:
1. Seleccione Archivo > Nuevo.
2. Seleccione el tipo de archivo externo que desee crear (archivo ActionScript, Flash
Communication o Flash JavaScript).
Puede tener varios archivos externos abiertos al mismo tiempo; los nombres de archivo se
muestran en las fichas situadas en la parte superior de la ventana Script. Para más información
sobre las funciones de la ventana Script, consulte los temas siguientes:
■ “Barras de herramientas del panel Acciones y la ventana Script” en la página 41
■ “Opciones de edición de ActionScript” en la página 43
■ “Sugerencias o consejos sobre códigos en Flash” en la página 47
■ “Aplicación de formato al código” en la página 53
■ “Utilización del resaltado de sintaxis” en la página 55
■ “Utilización de números de línea y ajuste de texto” en la página 56
■ “Utilización de las teclas de método abreviado de Esc” en la página 56
■ “Visualización de caracteres ocultos” en la página 57
■ “Utilización de la herramienta Buscar” en la página 58
■ “Comprobación de la sintaxis y la puntuación” en la página 59
■ “Importación y exportación de scripts” en la página 60
Ventana Script39
Codificación en el panel Acciones y la
ventana Script
El panel Script, donde se edita el código, es el elemento principal tanto del panel Acciones
como de la ventana Script. El panel Acciones y la ventana Script ofrecen funciones básicas de
edición de scripts y de ayuda para el código, como sugerencias o consejos sobre códigos,
coloreado, aplicación de formato automático, etc.
Se puede acceder a las funciones que ayudan a editar código desde la barra de herramientas del
panel Acciones o la ventana Script, a través del sistema de menús y en el propio panel
Acciones.
En los siguientes temas se presentan las numerosas funciones que ofrece el editor de
ActionScript (panel Acciones y ventana Script):
■ “Barras de herramientas del panel Acciones y la ventana Script” en la página 41
■ “Opciones de edición de ActionScript” en la página 43
■ “Preferencias de ActionScript” en la página 45
■ “Sugerencias o consejos sobre códigos en Flash” en la página 47
■ “Aplicación de formato al código” en la página 53
■ “Utilización del resaltado de sintaxis” en la página 55
■ “Utilización de números de línea y ajuste de texto” en la página 56
■ “Utilización de las teclas de método abreviado de Esc” en la página 56
■ “Visualización de caracteres ocultos” en la página 57
■ “Utilización de la herramienta Buscar” en la página 58
■ “Comprobación de la sintaxis y la puntuación” en la página 59
■ “Importación y exportación de scripts” en la página 60
Para obtener información sólo de las funciones del panel Acciones, como la fijación de script y
el navegador de script, consulte “Funciones del panel Acciones” en la página 62.
40Escritura y edición en ActionScript 2.0
Barras de herramientas del panel Acciones y la
Añadi
t
ventana Script
Las barras de herramientas del panel Acciones y la ventana Script contienen vínculos a las
funciones de ayuda para el código que le ayudan a simplificar y agilizar la codificación en
ActionScript. Estas barras de herramientas son distintas en función de si utiliza el editor de
ActionScript del panel Acciones o el panel Script. En la siguiente imagen se muestran las
funciones incluidas en el editor de ActionScript. Las opciones marcadas sólo están disponibles
en el panel Acciones.
r un nuevo elemento al scrip
Buscar
Insertar una ruta
de destino *
Opciones de depuración*
Asistente de script *
Menú emergente *
Mostrar consejos sobre códigos
Formato automático
Revisar sintaxis
* Sólo panel Acciones
Referencia
Las funciones de la barra de herramientas se describen con detalle en “Utilización del panel
Acciones y la ventana Script” en la página 36. A continuación, se ofrece un resumen rápido de
los botones que encontrará en las barras de herramientas tanto del panel Acciones como de la
ventana Script.
NOTA
Algunas de las opciones siguientes se encuentran solamente en el panel Acciones.
Estas funciones están marcadas como Sólo panel Acciones.
Añadir un nuevo elemento al script Muestra todos los elementos del lenguaje que
también se encuentran en la caja de herramientas de ActionScript. Al elegir un elemento
de la lista de categorías de elementos del lenguaje, éste se añade al script.
Buscar Busca y reemplaza texto del código ActionScript. Para más información,
consulte “Utilización de la herramienta Buscar” en la página 58.
Insertar una ruta de destino Sólo panel Acciones. Le ayuda a la hora de establecer una
ruta de destino absoluta o relativa para una acción del script. Para más información,
consulte “Inserción de rutas de destino” en la página 65.
Revisar sintaxis Comprueba los errores de sintaxis existentes en el script actual. Los
errores de sintaxis se muestran en el panel Salida. Para más información, consulte
“Comprobación de la sintaxis y la puntuación” en la página 59.
Codificación en el panel Acciones y la ventana Script41
Formato automático Aplica formato al script para lograr una sintaxis de código
correcta y mejorar la legibilidad. Puede establecer preferencias de aplicación de formato
automático en el cuadro de diálogo Preferencias, disponible desde el menú Edición o
desde el menú emergente del panel Acciones. Para más información, consulte “Aplicación
de formato al código” en la página 53.
Mostrar consejos sobre códigos Si ha desactivado los consejos automáticos sobre
códigos, puede utilizar este comando con el fin de mostrar manualmente un consejo para
la línea de código en la que está trabajando. Para más información, consulte “Asistente de
script” en la página 62.
Opciones de depuración Establece y quita puntos de corte en el script, de forma que, al
depurar el documento de Flash, pueda detener y luego avanzar línea a línea por el script.
Las opciones de depuración se encuentran ahora disponibles en la ventana Script, así como
en el panel Acciones, pero sólo para los archivos ActionScript. Esta opción se desactiva
para los archivos de comunicación de ActionScript y Flash JavaScript. Para obtener más
información sobre la depuración de los documentos de Flash, consulte “Depuración de los
scripts” en la página 754. Para obtener información sobre el establecimiento y eliminación
de elementos, consulte “Establecimiento y eliminación de puntos de corte” en
la página 763.
Asistente de script Sólo panel Acciones. El modo de asistente de script le solicita la
introducción de los elementos necesarios para crear scripts. Para más información,
consulte “Asistente de script” en la página 62.
Referencia Muestra un tema de ayuda de referencia para el elemento del lenguaje
ActionScript seleccionado en el panel Script. Por ejemplo, si hace clic en una sentencia
import y luego selecciona Referencia, aparece en el panel Ayuda el tema relativo a import.
Menú emergente Sólo panel Acciones. Contiene los diversos comandos y preferencias
que se aplican al panel Acciones o a la ventana Script. Por ejemplo, puede establecer los
números de línea y el ajuste de texto en el editor de ActionScript, acceder a las preferencias
de ActionScript e importar o exportar scripts. Para más información, consulte “Opciones
de edición de ActionScript” en la página 43.
42Escritura y edición en ActionScript 2.0
Opciones de edición de ActionScript
La ventana Script y el panel Acciones ofrecen una gran variedad de funciones de ayuda para el
código (herramientas que facilitan la escritura y el mantenimiento de los scripts). Estas
opciones están disponibles en la barra de herramientas del panel Acciones o la ventana Script y
en el menú emergente de Acciones. Al editar código ActionScript en la ventana Script, estas
opciones están disponibles en la barra de herramientas y en el sistema de menús de Flash.
El panel Acciones ofrece más opciones de las que se encuentran disponibles en la ventana
Script. Ello se debe a que las opciones adicionales son útiles en el contexto de creación de
código ActionScript incorporado en un documento de Flash (no al escribir archivos de
ActionScript externos). Para obtener información sobre cuáles de estas opciones están
disponibles en la ventana Script, consulte “Ventana Script” en la página 38.
Las opciones que están disponibles en la ventana Script y el panel Acciones se describen en
“Barras de herramientas del panel Acciones y la ventana Script” en la página 41.
Las siguientes opciones están disponibles en el menú emergente del panel Acciones y a través
de diversos menús de la ventana Script.
NOTA
Algunas de las opciones siguientes se encuentran solamente en el panel Acciones.
Estas funciones están marcadas como Sólo panel Acciones.
Volver a cargar sugerencias de código Sólo panel Acciones. Si personaliza el modo de
asistente de script mediante la escritura de métodos personalizados, puede volver a cargar
sugerencias de código sin reiniciar Flash 8.
Fijar script Sólo panel Acciones. Fija (bloquea en un lugar) el script actualmente
mostrado en el panel Script. Para más información, consulte “Fijación de scripts en el
panel Acciones” en la página 63.
Cerrar script Sólo panel Acciones. Cierra el script actualmente abierto.
Cerrar todos los script Sólo panel Acciones. Cierra todos los scripts actualmente
abiertos.
Ir a línea Localiza y resalta la línea especificada del panel Script.
Buscar y reemplazar Busca y reemplaza texto dentro de los scripts del panel Script.
Para más información, consulte “Utilización de la herramienta Buscar” en la página 58.
Buscar otra vez Repite la acción de búsqueda de la última cadena introducida en la
herramienta Buscar. Para más información, consulte “Utilización de la herramienta
Buscar” en la página 58.
Codificación en el panel Acciones y la ventana Script43
Importar script Le permite importar un archivo de script (ActionScript) al panel Script.
Para más información, consulte “Preferencias de importación y exportación” en
la página 61.
Exportar script Exporta el script actual a un archivo ActionScript (AS) externo. Para
más información, consulte “Preferencias de importación y exportación” en la página 61.
Teclas de método abreviado de Esc Introduce rápidamente elementos y estructuras
sintácticas habituales del lenguaje en los scripts. Por ejemplo, al presionar Esc+g+p en el
panel Script, se inserta la función
gotoAndPlay() en el script. Al seleccionar la opción
Teclas de método abreviado de Esc del menú emergente del panel Acciones, aparecen
todas las teclas de método abreviado de Esc en la caja de herramientas Acciones. Para más
información, consulte “Utilización de las teclas de método abreviado de Esc” en
la página 56.
Caracteres ocultos Permite ver los caracteres ocultos del script. Los caracteres ocultos
son espacios, tabuladores y saltos de línea. Para más información, consulte “Visualización
de caracteres ocultos” en la página 57.
Números de línea Muestra los números de línea en el panel Script. Para más
información, consulte “Utilización de números de línea y ajuste de texto” en la página 56.
Preferencias Sólo panel Acciones. Muestra el cuadro de diálogo de preferencias de
ActionScript. Para más información, consulte “Preferencias de ActionScript” en
la página 45.
Ajustar texto Para ajustar las líneas del script que superan el tamaño actual de la ventana
Script, seleccione Ajustar texto del menú emergente del panel Acciones. Si utiliza la
ventana Script, seleccione Ajustar texto en el menú Ver. Para más información, consulte
“Utilización de números de línea y ajuste de texto” en la página 56.
Agrupar Acciones con Sólo panel Acciones. Le permite agrupar el panel Acciones (que
incluye la caja de herramientas Acciones y el navegador de scripts) con otros paneles
dentro del entorno de edición de Flash.
Además, el menú emergente del panel Acciones incluye los comandos Imprimir, Ayuda y de
cambio de tamaño del panel.
44Escritura y edición en ActionScript 2.0
Preferencias de ActionScript
Tanto si edita código en el panel Acciones como si lo hace en la ventana Script, puede
establecer y modificar un único conjunto de preferencias. Por ejemplo, puede controlar la
sangría automática, las sugerencias (consejos) y el color del código y diversas funciones básicas
de edición de código.
Para acceder a las preferencias de ActionScript:
1. Para acceder a las preferencias de ActionScript en un archivo FLA con el panel Acciones,
seleccione Preferencias en el menú emergente, o bien Edición > Preferencias (Windows) o
Flash > Preferencias (Macintosh) y haga clic en ActionScript en la lista Categoría.
2. Para acceder a las preferencias de ActionScript en la ventana Script, seleccione Edición >
Preferencias y haga clic en ActionScript (Windows) o Flash > Preferencias y haga clic en
ActionScript (Macintosh).
En la siguiente imagen se muestra la configuración de ActionScript que puede cambiar en
Flash 8.
Codificación en el panel Acciones y la ventana Script45
Puede establecer las siguientes preferencias:
Sangría automática Cuando la sangría automática está activada, el texto que se escribe
después del paréntesis de apertura [(] o llave inicial ({) se sangra de forma automática según el
valor de Tamaño de tabulación establecido en las preferencias de ActionScript. Para más
información, consulte “Aplicación de formato al código” en la página 53.
Tamaño de tabulación Especifica el número de caracteres que debe desplazarse una nueva
línea cuando está activada la sangría automática.
Sugerencias para el código Activa las sugerencias (consejos) para el código en el panel
Script. Para más información sobre el uso de sugerencias o consejos de códigos, consulte
“Sugerencias o consejos sobre códigos en Flash” en la página 47.
Demora Especifica el retardo (en segundos) hasta que se muestran las sugerencias o
consejos sobre códigos.
Fuente Especifica la fuente utilizada en el panel Script.
Utilizar asignación dinámica de fuentes Comprueba que la familia de fuentes
seleccionada dispone de los glifos necesarios para representar todos los caracteres. De no ser
así, Flash sustituye la familia de fuentes por otra que contenga los caracteres necesarios. Para
más información, consulte “Aplicación de formato al código” en la página 53.
Codificación Especifica la codificación de caracteres utilizada al abrir, guardar, importar y
exportar archivos de ActionScript. Para más información, consulte “Importación y
exportación de scripts” en la página 60.
Volver a cargar archivos modificados Permite seleccionar cuándo se verán advertencias si
se modifica, traslada o elimina un archivo de script. Seleccione Siempre, Nunca o Mensaje.
■ Siempre No se muestra ninguna advertencia cuando se detecta un cambio y el archivo
se vuelve a cargar automáticamente.
■ Nunca No se muestra ninguna advertencia cuando se detecta un cambio y el archivo
permanece en el estado actual.
■ Mensaje (Predeterminado) Se muestra una advertencia cuando se detecta un cambio y
puede elegir entre volver a cargar o no el archivo.
Al crear aplicaciones que incluyen archivos de script externos, esta función ayuda a evitar
sobrescribir un script que haya modificado un miembro del equipo desde que abrió la
aplicación o publicar la aplicación con versiones anteriores de scripts. Las advertencias
permiten cerrar automáticamente un script y volver a abrir la versión modificada más actual.
Colores de sintaxis Especifica los colores para el coloreado de código en los scripts. Con el
coloreado de código activado, puede seleccionar los colores que se mostrarán en el panel Script.
Lenguaje Abre el cuadro de diálogo Configuración de ActionScript. Para más información,
consulte “Modificación de la ruta de clases” en la página 68.
46Escritura y edición en ActionScript 2.0
Sugerencias o consejos sobre códigos en Flash
Cuando utilice el panel Acciones o la ventana Script, podrá emplear diversas funciones que le
ayudarán a escribir código sintácticamente correcto. Los consejos sobre códigos le ayudan a
escribir código de forma rápida y precisa. Los consejos sobre códigos incluyen sugerencias que
contienen la sintaxis correcta y menús que permiten seleccionar nombres de métodos y
propiedades. En las siguientes secciones se muestra cómo escribir código que utilice estas
funciones.
■ “Activación de las sugerencias para el código” en la página 47
■ “Utilización de las sugerencias para el código” en la página 48
■ “Strict typing de objetos para activar las sugerencias para el código” en la página 51
■ “Utilización de sufijos para activar las sugerencias para el código” en la página 51
■ “Utilización de comentarios para activar las sugerencias para el código” en la página 53
Activación de las sugerencias para el código
Al trabajar en el panel Acciones o en la ventana Script, Flash puede detectar la acción que está
introduciendo y mostrar una sugerencia para el código. Los dos estilos diferentes de sugerencias
para el código son una sugerencia que contiene la sintaxis completa de la acción en cuestión y
un menú emergente en el que se enumeran nombres de los métodos y propiedades posibles (lo
que en ocasiones denominados capacidad para completar código). Aparece un menú emergente
para los parámetros, propiedades y eventos cuando utiliza strict typing o asigna un nombre a
los objetos, como se explica en esta sección.
Las sugerencias para el código también aparecen al hacer doble clic en un elemento de la caja
de herramientas Acciones o en Añadir (+) situado en la barra de herramientas del panel
Acciones o la ventana Script para añadir acciones al panel Script. Para más información sobre
cómo utilizar las sugerencias para el código cuando aparecen, consulte “Utilización de las
sugerencias para el código” en la página 48.
NOTA
Las sugerencias para el código están activadas automáticamente para clases nativas
que no requieren que se cree y asigne un nombre a una instancia de la clase, como Math,
Key, Mouse, etc.
Para asegurarse de que estén activados las sugerencias para el código, la opción Sugerencias
para el código debe estar seleccionada en el cuadro de diálogo Preferencias de ActionScript.
Para más información, consulte “Panel Acciones” en la página 37.
Codificación en el panel Acciones y la ventana Script47
Utilización de las sugerencias para el código
Las sugerencias para el código están desactivadas de forma predeterminada. Al definir las
preferencias, puede desactivar las sugerencias para el código o determinar la rapidez con la que
aparecen. Aunque las sugerencias para el código estén desactivadas en las preferencias, puede
ver una sugerencia para un comando específico.
Para especificar la configuración de las sugerencias para el código
automáticas, realice una de las acciones siguientes:
■ En el panel Acciones o en la ventana Script, seleccione Edición > Preferencias (Windows)
o Flash > Preferencias (Macintosh), haga clic en ActionScript de la lista Categoría y active
o desactive Sugerencias para el código.
■ En el panel Acciones, seleccione Preferencias en el menú emergente (en la parte superior
derecha del panel Acciones) y active o desactive Sugerencias para el código en las
preferencias de ActionScript.
Si activa las sugerencias para el código, también puede especificar los segundos que deben
transcurrir antes de que aparezcan dichas sugerencias. Por ejemplo, si no tiene experiencia con
ActionScript, seguramente preferirá que no haya ninguna demora, ya que así las sugerencias
para el código aparecen inmediatamente. No obstante, si suele saber lo que desea escribir y tan
sólo necesita sugerencias cuando utiliza elementos de lenguaje con los que no está
familiarizado, puede especificar una demora para que las sugerencias para el código no
aparezcan cuando no desee utilizarlas.
Para especificar una demora en las sugerencias para el código:
1. En el panel Acciones o en la ventana Script, seleccione Edición > Preferencias (Windows)
o Flash > Preferencias (Macintosh) desde el menú principal.
2. Haga clic en ActionScript de la lista Categoría.
3. Utilice el deslizador para seleccionar una cantidad de retraso.
Esta cantidad es en segundos.
Para trabajar con sugerencias para el código con formato de información
sobre herramientas:
1. Visualice las sugerencias para el código escribiendo un paréntesis de apertura [(] después
de un elemento que requiere paréntesis (por ejemplo, después de un nombre de método,
un comando del tipo
48Escritura y edición en ActionScript 2.0
if o do..while, etc.).
Aparece la sugerencia para el código.
NOTA
Si no aparece la sugerencia para el código, asegúrese de que no ha desactivado
Sugerencias para el código en las preferencias de ActionScript (Edición >
Preferencias (Windows) o Flash > Preferencias (Macintosh) y haga clic en
ActionScript de la lista Categoría). Si desea visualizar sugerencias para el código
para una variable u objeto que ha creado, asegúrese de que ha asignado un nombre
correcto a la variable o al objeto (consulte “Utilización de sufijos para activar las
sugerencias para el código” en la página 51), o que utiliza strict typing para la
variable u objeto (consulte “Strict typing de objetos para activar las sugerencias para
el código” en la página 51).
2. Introduzca un valor para el parámetro.
Si hay presente más de un parámetro, separe los valores con comas. En el caso de
funciones o sentencias, como el bucle
for, separe los parámetros con punto y coma.
Los comandos sobrecargados (funciones o métodos que pueden invocarse con diferentes
conjuntos de parámetros), como
gotoAndPlay() o for, muestran un indicador que
permite seleccionar el parámetro que desea establecer. Haga clic en los botones de flecha o
presione Ctrl+Flecha izquierda o Ctrl+Flecha derecha para seleccionar el parámetro.
3. Para cerrar la sugerencia para el código, utilice uno de los procedimientos siguientes:
■Escriba un paréntesis de cierre [)].
■Haga clic fuera de la sentencia.
■Presione Esc.
Codificación en el panel Acciones y la ventana Script49
Para trabajar con las sugerencias para el código con formato de menú:
1. Visualice la sugerencia para el código escribiendo un punto después del nombre de objeto
o variable.
Aparece el menú de sugerencias para el código.
NOTA
Si no aparece la sugerencia para el código, asegúrese de que no ha desactivado
Sugerencias para el código en las preferencias de ActionScript (Edición >
Preferencias (Windows) o Flash > Preferencias (Macintosh) y haga clic en
ActionScript de la lista Categoría). Si desea visualizar sugerencias para el código
para una variable u objeto que ha creado, asegúrese de que ha asignado un nombre
correcto a la variable o al objeto (consulte “Utilización de sufijos para activar las
sugerencias para el código” en la página 51), o que utiliza strict typing para la
variable u objeto (consulte “Strict typing de objetos para activar las sugerencias para
el código” en la página 51).
2. Para desplazarse por las sugerencias para el código, utilice las teclas de flecha arriba y flecha
abajo.
3. Para seleccionar un elemento del menú, presione Intro o el tabulador, o haga doble clic en
el elemento.
4. Para cerrar la sugerencia para el código, utilice uno de los procedimientos siguientes:
■Seleccione uno de los elementos del menú.
■Haga clic por encima o por debajo de la ventana de menú.
■Escriba un paréntesis de cierre [)] si ya ha utilizado un paréntesis de apertura [(].
■Presione Esc.
Para mostrar manualmente una sugerencia para el código:
1. Haga clic en una ubicación de código en la que puedan aparecer sugerencias para el código,
como en las siguientes ubicaciones:
■Después del punto (.) que aparece a continuación de una sentencia o comando, donde
debe especificarse una propiedad o un método
■Entre paréntesis [()] en un nombre de método
50Escritura y edición en ActionScript 2.0
2. Siga uno de estos procedimientos:
■Haga clic en Mostrar consejos sobre códigos en la barra de herramientas del panel
Acciones o ventana Script.
■Presione Ctrl+barra espaciadora (Windows) o Comando+barra espaciadora
(Macintosh).
■Si está utilizando el panel Acciones, seleccione Mostrar consejos sobre códigos en el
menú emergente.
Strict typing de objetos para activar las sugerencias para el
código
Cuando se utiliza ActionScript 2.0, se puede utilizar strict typing para una variable basada en
una clase incorporada, como Botón, Array, etc. De este modo, el panel Script muestra las
sugerencias para el código de la variable. Por ejemplo, suponga que escribe el código siguiente:
var names:Array = new Array();
names.
En cuanto escriba el punto (.), Flash mostrará una lista de métodos y propiedades disponibles
para los objetos Array en un menú emergente, ya que ha definido la variable como una matriz.
Para más información sobre la escritura de datos, consulte “Asignación de tipos de datos y
“strict data typing”” en la página 337. Para más información sobre cómo utilizar las
sugerencias para el código cuando aparecen, consulte “Utilización de las sugerencias para el
código” en la página 48.
Utilización de sufijos para activar las sugerencias para el
código
Si utiliza ActionScript 1 o desea visualizar las sugerencias para el código de los objetos que crea
sin strict typing (consulte “Strict typing de objetos para activar las sugerencias para el código”
en la página 51), debe añadir un sufijo especial al nombre de cada objeto cuando lo cree. Por
ejemplo, los sufijos que activan las sugerencias para el código para la clase Array y la clase
Camera son
var my_array = new Array();
var my_cam = Camera.get();
puede introducir cualquiera de las siguientes posibilidades (el nombre de la variable seguido
de un punto):
my_array.
my_cam.
Aparecerán sugerencias para el código de los objetos Array y Camera.
_array y _cam, respectivamente. Por ejemplo, si escribe el código siguiente:
Codificación en el panel Acciones y la ventana Script51
Para los objetos que aparecen en el escenario, utilice el sufijo del cuadro de texto Nombre de
instancia del inspector de propiedades. Por ejemplo, para ver las sugerencias para el código de
objetos MovieClip, utilice el inspector de propiedades para asignar nombres de instancia con
el sufijo
_mc a todos los objetos MovieClip. Así, siempre que escriba el nombre de instancia
seguido de un punto, se mostrarán las sugerencias para el código.
Aunque los sufijos no son necesarios para activar las sugerencias para el código cuando se
utiliza el strict typing de un objeto, su utilización ayuda a comprender los scripts.
En la tabla siguiente se enumeran los sufijos necesarios para que se presenten sugerencias para
el código automáticamente.
Tipo de objetoSufijo de la variable
Array_array
Button_btn
Camera_cam
Color_color
ContextMenu_cm
ContextMenuItem_cmi
Date_date
Error_err
LoadVars_lv
LocalConnection_lc
Microphone_mic
MovieClip_mc
MovieClipLoader_mcl
PrintJob_pj
NetConnection_nc
NetStream_ns
SharedObject_so
Sound_sound
String_str
TextField_txt
TextFormat_fmt
Video_video
52Escritura y edición en ActionScript 2.0
Tipo de objetoSufijo de la variable
XML_xml
XMLNode_xmlnode
XMLSocket_xmlsocket
Para más información sobre cómo utilizar las sugerencias para el código cuando aparecen,
consulte “Utilización de las sugerencias para el código” en la página 48.
Utilización de comentarios para activar las sugerencias para el
código
También puede utilizar comentarios de ActionScript para especificar una clase de objeto para
las sugerencias para el código. En el ejemplo siguiente se indica a ActionScript que la clase de
la instancia
después de estos comentarios, aparecerían las sugerencias para el código que muestran la lista
de métodos y propiedades de MovieClip. Si introdujese
aparecería un menú con una lista de los métodos y propiedades de Array, y así sucesivamente.
No obstante, Macromedia recomienda que, en lugar de esta técnica, se utilice “strict data
typing” (consulte “Strict typing de objetos para activar las sugerencias para el código” en
la página 51) o sufijos (consulte “Utilización de sufijos para activar las sugerencias para el
código” en la página 51), ya que dichas técnicas activan automáticamente las sugerencias para
el código y hacen que el código sea más comprensible. Para más información sobre el uso de
sugerencias para el código, consulte “Utilización de las sugerencias para el código” en
la página 48.
theObject es Object y así sucesivamente. Si especificara mc seguido de un punto
theArray seguido de un punto,
Aplicación de formato al código
Puede especificar una configuración para determinar si se debe aplicar formato y sangrías
automática o manualmente al código. Además, puede seleccionar si debe utilizarse asignación
dinámica de fuentes, lo que garantiza que se utilicen las fuentes correctas cuando se trabaja
con textos multilingües.
Para establecer las opciones de formato:
1. En el panel Acciones, seleccione Preferencias del menú emergente (en la parte superior
derecha del panel Acciones). En el cuadro de diálogo Preferencias, seleccione Formato
automático.
Codificación en el panel Acciones y la ventana Script53
De forma alternativa, en la ventana Script, seleccione Edición > Preferencias (Windows) o
Flash > Preferencias (Macintosh). En el cuadro de diálogo Preferencias, seleccione
Formato automático.
2. Seleccione cualquiera de las opciones de Formato automático.
Para ver el efecto de cada selección, examine el panel Vista previa.
Una vez establecidas las opciones de Formato automático, la configuración se aplicará
automáticamente al código que escriba, pero no al código que ya exista; deberá aplicar
manualmente la configuración al código ya existente. Debe aplicar formato manualmente a
un código al que se aplicó formato con una configuración diferente, un código importado de
otro editor, etc.
Para aplicar formato al código según la configuración de Formato automático,
realice una de las acciones siguientes:
■ Haga clic en Formato automático del panel Acciones o en la barra de herramientas de la
ventana Script.
■ En el panel Acciones, seleccione Formato automático en el menú emergente.
■ Presione Ctrl+Mayús+F (Windows) o Comando+Mayúsculas+F (Macintosh).
■ En la ventana Script, seleccione Herramientas > Formato automático.
Para utilizar la asignación dinámica de fuentes:
■ Para activar o desactivar la asignación dinámica de fuentes, seleccione o anule la selección
de Utilizar asignación dinámica de fuentes en el cuadro de diálogo Preferencias.
La asignación dinámica de fuentes se encuentra desactivada de forma predeterminada, ya
que así aumenta el tiempo de rendimiento al crear scripts. Si está trabajando con textos
multilingües, deberá activar la asignación dinámica de fuentes, ya que de este modo, se
asegura de que se utilizan las fuentes correctas.
Para utilizar una sangría automática:
■ Para activar y desactivar la sangría automática, seleccione o anule la selección de Sangría
automática en el cuadro de diálogo Preferencias.
Cuando la sangría automática está activada, el texto que se escribe después del paréntesis
de apertura [(] o llave inicial ({) se sangra de forma automática según el valor de Tamaño
de tabulación establecido en las preferencias de ActionScript.
En los scripts, puede aplicar sangría a una línea seleccionándola y presionando la tecla
Tabulador. Para quitar la sangría, seleccione la línea y presione Mayús+Tab.
54Escritura y edición en ActionScript 2.0
Utilización del resaltado de sintaxis
En ActionScript, como en cualquier lenguaje, la sintaxis es la manera en la que los elementos
se agrupan para crear un significado. Si utiliza una sintaxis de ActionScript incorrecta, los
scripts no funcionarán.
Cuando escribe scripts en Flash Basic 8 y Flash Professional 8, los comandos no admitidos por
la versión del reproductor que esté utilizando se muestran en amarillo en la caja de
herramientas Acciones. Por ejemplo, si la versión del archivo SWF de Flash Player está
establecida en Flash 7, el código de ActionScript que sólo se admite en Flash Player 8 aparece
en color amarillo en la caja de herramientas Acciones. (Para obtener información sobre la
configuración de la versión de archivos SWF de Flash Player, consulte Capítulo 17,
“Establecimiento de las opciones de publicación para el formato de archivo SWF de Flash” en
Utilización de Flash.)
También puede definir una preferencia para que Flash codifique por colores las distintas partes
de los scripts a medida que los escribe, con el fin de resaltar los errores de escritura. Por
ejemplo, supongamos que establece la preferencia de coloreado de la sintaxis de tal modo que
las palabras clave se muestren en color azul oscuro. Mientras escribe código, si escribe
palabra
var aparecerá en azul. No obstante si, por error, escribe vae, la palabra vae
permanecerá de color negro, con lo cual usted sabrá inmediatamente que la ha escrito
incorrectamente. Para obtener información sobre las palabras clave, consulte “Palabras clave”
en la página 103.
Para definir las preferencias para el coloreado de la sintaxis a medida que
escribe, realice una de las acciones siguientes:
en ActionScript de la lista Categoría y especifique la configuración de Colores de sintaxis.
■ En el panel Acciones, seleccione Preferencias en el menú emergente (parte superior
derecha del panel Acciones) y especifique la configuración de Colores de sintaxis en las
preferencias de ActionScript.
■ Con el puntero del ratón en el panel Script, presione Control-U (Windows) o Comando-
U (Macintosh).
Puede cambiar la configuración de color de las palabras clave, los comentarios, los
identificadores y las cadenas. Para obtener información sobre identificadores y cadenas,
consulte “Terminología” en la página 851 y “Tipo de datos String (cadena)” en la página 336.
Para obtener información sobre conversión en comentario, consulte “Comentarios” en
la página 95.
var, la
Codificación en el panel Acciones y la ventana Script55
Utilización de números de línea y ajuste de texto
Puede especificar si se deben ver los números de línea y si se debe ajustar el texto de las líneas
largas del código. Normalmente, se deben activar los números de línea y el ajuste de texto para
facilitar la edición de código. Los números de línea facilitan el desplazamiento y el análisis del
código mientras lo edita o modifica. El ajuste de texto ayuda a evitar tener que desplazarse
horizontalmente por largas líneas de código (especialmente cuando trabaja en el entorno de
edición o con resoluciones de pantalla bajas).
Para activar o desactivar los números de línea, siga uno de estos
procedimientos:
■ En el panel Acciones, seleccione Números de línea en el menú emergente.
■ En la ventana Script, seleccione Herramientas > Números de línea.
■ Presione Ctrl+Mayús+L (Windows) o Comando+Mayúsculas+L (Macintosh).
Para activar o desactivar el ajuste de texto, siga uno de estos procedimientos:
■ En el panel Acciones, seleccione Ajustar texto en el menú emergente.
■ En la ventana Script, seleccione Herramientas > Ajustar texto.
■ Presione las teclas Ctrl+Mayús+W (Windows) o Comando+Mayúsculas+W (Macintosh).
Utilización de las teclas de método abreviado de Esc
Puede añadir muchos elementos a un script mediante las teclas de método abreviado Esc
(presionando la tecla Esc y, a continuación, dos teclas más).
NOTA
Estos métodos abreviados son diferentes de los métodos abreviados de teclado que
activan determinados comandos de menú.
Por ejemplo, si trabaja en el panel Script y presiona Esc+d+o, se añade el siguiente código al
script:
do {
} while ();
El punto de inserción se coloca justo después de la palabra while, donde puede comenzar a
escribir su condición. Del mismo modo, si presiona Esc+c+h, se añade el siguiente código al
script y el punto de inserción se coloca entre los paréntesis [
()], donde puede empezar a
escribir la condición:
catch () {
}
56Escritura y edición en ActionScript 2.0
Para saber (o recordar) qué comandos tienen teclas de método abreviado de Esc, puede
mostrarlos junto a elementos de la caja de herramientas del panel Acciones.
Para mostrar u ocultar las teclas de método abreviado de Esc:
■ En el menú emergente del panel Acciones, seleccione o anule la selección de Teclas de
método abreviado de Esc.
Las teclas de método abreviado de Esc aparecen junto a los elementos de la caja de
herramientas de ActionScript.
Visualización de caracteres ocultos
Al escribir y aplicar formato al código ActionScript, introducirá espacios, tabuladores y saltos
de línea en el script. Obviamente, estos son útiles y necesarios para organizar el código
visualmente. Sin embargo, el compilador de Flash genera errores si encuentra espacios de
doble byte que no forman parte de un valor de cadena. Al mostrar los caracteres ocultos en el
panel Script, podrá ver y quitar los espacios de doble byte.
Los siguientes símbolos se utilizan para mostrar cada uno de los caracteres ocultos:
espacio de un solo
byte
espacio de doble byte l
tabulador>>
salto de línea
.
Codificación en el panel Acciones y la ventana Script57
Para mostrar caracteres ocultos, siga uno de estos procedimientos:
■ Seleccione Caracteres ocultos en el menú emergente.
■ Presione Ctrl+Mayús+8 (Windows) o Comando+Mayúsculas+8 (Macintosh).
Cuando se muestran los caracteres ocultos, el panel Script presenta el siguiente aspecto:
Utilización de la herramienta Buscar
La herramienta Buscar le permite localizar y, opcionalmente, reemplazar cadenas de texto de
los scripts. Puede reemplazar el texto la primera o todas las veces que aparezca en el script.
También puede hacer que coincidan las mayúsculas y minúsculas del texto.
Para buscar texto en un script:
1. En la barra de herramientas del panel Acciones o la ventana Script, seleccione la
herramienta Buscar o presione Ctrl+F (Windows) o Comando+F (Macintosh).
2. Introduzca la cadena que desea buscar en el script.
3. Haga clic en Buscar siguiente.
Si el texto o los caracteres aparecen en el script, se resaltarán las palabras o caracteres en el
panel Script.
58Escritura y edición en ActionScript 2.0
Para buscar y reemplazar texto en un script:
1. En la barra de herramientas del panel Acciones o la ventana Script, haga clic en la
herramienta Buscar o presione Ctrl+F (Windows) o Comando+F (Macintosh).
2. Introduzca la cadena que desea localizar y reemplazar en el script.
3. En el cuadro de texto Reemplazar, introduzca la nueva cadena.
4. Haga clic en Buscar siguiente.
Si la cadena se encuentra en el script, se resalta.
5. Haga clic en Reemplazar para reemplazar la cadena o en Reemplazar todo para reemplazar
la cadena en todos los lugares en los que aparezca.
Una vez que haya introducido una cadena de búsqueda en la herramienta Buscar, podrá
repetir la búsqueda si selecciona Buscar otra vez en el menú emergente.
Comprobación de la sintaxis y la puntuación
Para determinar si el código que ha escrito responde como se esperaba, es necesario publicar o
probar el archivo. Sin embargo, puede realizar una comprobación rápida del código
ActionScript sin salir del archivo FLA. Los errores de sintaxis se muestran en el panel Salida.
También puede comprobar si los paréntesis, las llaves o los corchetes de un bloque de código
están emparejados.
Cuando se revisa la sintaxis, se comprueba el script actual. Si el script actual llama a clases de
ActionScript 2.0, dichas clases se compilan y su sintaxis también se revisa. Los demás scripts
que puedan encontrarse en el archivo FLA no se revisan.
Para revisar la sintaxis, utilice uno de los procedimientos siguientes:
■ Haga clic en Revisar sintaxis en la barra de herramientas del panel Acciones o la ventana
Script.
■ En el panel Acciones, seleccione Revisar sintaxis en el menú emergente.
■ Seleccione el panel Script (para que se resalte) y presione Ctrl+T (Windows) o
Comando+T (Macintosh).
NOTA
Si hace clic en Revisar sintaxis en un archivo de clase ActionScript 2.0 externo en la
ventana Script, la ruta de clases global afecta a este proceso. Algunas veces
generará errores (aunque la ruta de clases global esté correctamente configurada)
porque el compilador no tiene constancia de que se esté compilando esta clase.
Para más información sobre la compilación de clases, consulte “Compilación y
exportación de clases” en la página 253.
Codificación en el panel Acciones y la ventana Script59
Para revisar si los signos de puntuación están emparejados, siga uno de estos
procedimientos:
■ Haga clic entre las llaves ({}), los corchetes ([]) o paréntesis [()] del script.
■ Para Windows, presione Ctrl+' (comilla simple) o para Macintosh, presione Comando+'
(comilla simple) para resaltar el texto que se encuentra entre las llaves, los corchetes o los
paréntesis.
El resaltado ayuda a comprobar si la puntuación de apertura dispone de su
correspondiente puntuación de cierre.
Importación y exportación de scripts
Puede importar un script al panel Acciones o a la ventana Script y exportar sus scripts a
archivos ActionScript externos. Ambas operaciones pueden ser útiles para compartir código
entre diversas aplicaciones de Flash y equipos de desarrollo.
Para importar un archivo AS externo:
■ Para importar un script externo a un script en el que está trabajando en el panel Script,
sitúe el punto de inserción en el lugar en el que desea que aparezca la primera línea del
script externo y luego realice una de las siguientes operaciones:
■En el panel Acciones, seleccione Importar script del menú emergente o presione
Ctrl+Mayús+I (Windows) o Comando+Mayús+I (Macintosh).
■En la ventana Script, seleccione Importar script del menú Archivo o presione
Ctrl+Mayús+I (Windows) o Comando+Mayús+I (Macintosh).
Puede exportar un script desde el panel Acciones. Cuando esté utilizando la ventana Script, la
exportación es innecesaria, ya que puede guardar el archivo AS.
Para exportar un script desde el panel Acciones:
1. Seleccione el script que va a exportar y luego haga clic en Exportar script del menú
emergente o presione Ctrl+Mayús+X (Windows) o Comando+Mayús+X (Macintosh).
Aparecerá el cuadro de diálogo Guardar como.
2. Guarde el archivo de ActionScript (AS).
Flash admite una serie de formatos de codificación de caracteres (incluido Unicode), por lo
que puede especificar el formato que debe utilizarse al importar y exportar scripts. Para más
información, consulte “Importación y exportación de scripts” en la página 60 y “Preferencias
de importación y exportación” en la página 61.
60Escritura y edición en ActionScript 2.0
Compatibilidad de ActionScript con Unicode
Flash 8 es compatible con la codificación de texto Unicode para ActionScript. Ello significa
que se puede incluir texto en diferentes idiomas en un archivo de ActionScript. Por ejemplo,
puede incluir texto en inglés, japonés y francés en un mismo archivo.
ATENCIÓN
Si utiliza una aplicación en lengua no inglesa en un sistema en lengua inglesa, el
comando Probar película (consulte “Depuración de los scripts” en la página 754) dará
un error si una parte cualquiera de la ruta del archivo SWF incluye caracteres que no
pueden representarse mediante el esquema de codificación MBCS (Juegos de
caracteres multibyte, Multibyte Character Sets). Por ejemplo, las rutas en japonés, que
funcionan en un sistema en lengua japonesa, no funcionan en un sistema en inglés. Esta
limitación se aplica a todas las áreas de la aplicación que utilizan el reproductor externo.
Preferencias de importación y exportación
Puede definir en las preferencias de ActionScript el tipo de codificación que se debe utilizar al
importar o exportar archivos de ActionScript. Puede seleccionar la codificación UTF-8 o la
codificación predeterminada. UTF-8 es un formato Unicode de 8 bits, mientras que la
codificación predeterminada es el formato de codificación que admite el idioma del sistema
que esté utilizando, que también se conoce como página de códigos tradicional.
Normalmente, si se importan o exportan archivos de ActionScript en formato UTF-8, se
utiliza la preferencia UTF-8. Si se importan o exportan archivos con la página de códigos
tradicional que utiliza el sistema, se utiliza la preferencia Codificación predeterminada.
Si el texto de los scripts no tiene el aspecto esperado al abrir o al importar un archivo, cambie
la preferencia de codificación de importación. Si recibe un mensaje de advertencia al exportar
archivos de ActionScript, puede cambiar la preferencia de codificación de exportación o
desactivar este mensaje en las preferencias de ActionScript.
Para seleccionar las opciones de codificación de texto para importar o
exportar archivos de ActionScript:
1. En el cuadro de diálogo Preferencias (Edición > Preferencias (Windows) o Flash >
Preferencias (Macintosh)), haga clic en ActionScript de la lista Categoría.
2. En Opciones de edición, realice una o las dos acciones siguientes:
■En Abrir/importar, seleccione Codificación UTF-8 para abrir o importar con la
codificación Unicode o bien Codificación predeterminada para abrir o importar con la
codificación del idioma que utilice el sistema.
■En Guardar/exportar, seleccione Codificación UTF-8 para guardar o exportar con la
codificación Unicode, o bien Codificación predeterminada para guardar o exportar
con la codificación del idioma que utilice el sistema.
Codificación en el panel Acciones y la ventana Script61
Para activar o desactivar el mensaje de advertencia de la codificación de
exportación:
1. En el cuadro de diálogo Preferencias, seleccione Edición > Preferencias (Windows) o Flash >
Preferencias (Macintosh) y haga clic en Advertencias de la lista Categoría.
2. Seleccione o anule la selección de Avisar acerca de conflictos de codificación al exportar
archivos ActionScript.
Funciones del panel Acciones
Las funciones siguientes sólo están disponibles en el panel Acciones, no lo están en la ventana
Script. Aunque el panel Acciones cuenta con todas las funciones de la ventana Script, esta
última se utiliza con una funcionalidad distinta. El panel Acciones debe admitir parte de la
funcionalidad relacionada con los archivos FLA, que conocerá en las secciones siguientes. Para
ver las funciones disponibles tanto en la ventana Script como en el panel Acciones, consulte
las secciones de “Codificación en el panel Acciones y la ventana Script” en la página 40.
Para ver las funciones disponibles sólo en el panel Acciones, consulte estas secciones:
■ “Asistente de script” en la página 62
■ “Fijación de scripts en el panel Acciones” en la página 63
■ “Inserción de rutas de destino” en la página 65
Asistente de script
El Asistente de script le solicita la introducción de los elementos de un script, lo que le ayuda
a añadir interactividad sencilla al archivo SWF o aplicación de Flash con mayor facilidad. El
modo de asistente de script es idóneo para usuarios que no tengan soltura escribiendo scripts o
que simplemente prefieran la comodidad que ofrece esta herramienta.
Al utilizarlo conjuntamente con el panel Acciones, el Asistente de script le pide que seleccione
opciones y que introduzca parámetros. Por ejemplo, en lugar de escribir un nuevo script,
puede seleccionar un elemento del lenguaje de la caja de herramientas de Acciones (o el
comando Añadir (+) de la barra de herramientas), arrastrarlo al panel Script y, seguidamente,
utilizar el Asistente de script para que le ayude a completar el script.
62Escritura y edición en ActionScript 2.0
En el siguiente ejemplo, se ha añadido la función gotoAndPlay al panel Script. El Asistente de
script muestra todos los datos necesarios para utilizar esta función de ActionScript; en este
caso, el nombre de la escena, el tipo y el número de fotograma.
Fijación de scripts en el panel Acciones
Si no concentra todo el código en un archivo FLA en una única ubicación (descrito en
“Organización de código ActionScript” en la página 34) o si utiliza comportamientos
(consulte “Comportamientos” en la página 65), puede fijar varios scripts del panel Acciones
para que sea más fácil moverse por ellos. Fijar un script significa poder mantener la ubicación
del código abierta en el panel Acciones y hacer clic fácilmente entre los scripts abiertos.
En la figura siguiente, el script asociado con la ubicación actual de la línea de tiempo se
encuentra en el fotograma 1 de la capa llamada Simplificar. La ficha del extremo izquierdo
siempre indica la ubicación a lo largo de la línea de tiempo. Ese script también se fija (se
muestra como la ficha situada más a la derecha). Se fijan otros dos scripts: uno en el
fotograma 1 y otro en el fotograma 15 de la capa llamada Intro. Puede desplazarse entre los
scripts fijados haciendo clic en las fichas o utilizando métodos abreviados de teclado, como
Control+Mayús+. (punto). Desplazarse entre scripts fijados no cambia la posición actual en la
línea de tiempo. Como puede ver en la siguiente figura, se abren varios scripts en el panel
Acciones y puede hacer clic en cada ficha para desplazarse entre los scripts.
SUGERENCIA
Si el contenido que muestra el panel Script no cambia de acuerdo con la ubicación que
seleccione en la línea de tiempo, probablemente el panel Script está mostrando un script
fijado. Haga clic en la ficha de la izquierda en la parte inferior izquierda del panel Script
para mostrar el ActionScript asociado a su ubicación a lo largo de la línea de tiempo.
Funciones del panel Acciones63
Para fijar un script:
1. Coloque el puntero del ratón en la línea de tiempo de manera que el script aparezca en una
ficha en la parte inferior izquierda del panel Script del panel Acciones.
2. Siga uno de estos procedimientos:
■Haga clic en el icono de la chincheta situado a la derecha de la ficha.
■Haga clic con el botón derecho del ratón (Windows) o haga clic con la tecla Control
presionada (Macintosh) en la ficha y seleccione Fijar script.
■Seleccione Fijar script en el menú emergente (en la parte superior derecha del panel
Acciones).
■Con el puntero del ratón en el panel Script, presione Ctrl+= (signo igual) en Windows
o Comando+= en Macintosh.
Para liberar uno o varios scripts, siga uno de estos procedimientos:
■ Si aparece un script fijado en una ficha en la parte inferior izquierda del panel Script del
panel Acciones, haga clic en el icono de la chincheta situado a la derecha de la ficha.
■ Haga clic con el botón derecho del ratón (Windows) o haga clic con la tecla Control
presionada (Macintosh) en una ficha y seleccione Cerrar script o Cerrar todos los script.
■ Seleccione Cerrar script o Cerrar todos los script en el menú emergente (en la parte
superior derecha del panel Acciones).
■ Con el puntero del ratón en el panel Script, presione Ctrl+- (signo menos) en Windows o
Comando+- en Macintosh.
Para utilizar los métodos abreviados de teclado con scripts fijados:
■ Puede utilizar los siguientes métodos abreviados de teclado para trabajar con scripts
fijados:
AcciónTecla de método
abreviado de Windows
Fijar scriptCtrl+= (signo igual)Comando+=
Liberar scriptCtrl+- (signo menos)Comando+-
Desplazar selección a la
ficha de la derecha
Desplazar selección a la
ficha de la izquierda
Liberar todos los scriptsControl+Mayús+- (menos)Comando+Mayús+-
64Escritura y edición en ActionScript 2.0
Control+Mayús+. (punto)Comando+Mayús+.
Control+Mayús+, (coma)Comando+Mayús+,
Tecla de método
abreviado de Macintosh
Inserción de rutas de destino
Muchas de las acciones que se crean en el script afectan a clips de película, botones y otras
instancias de símbolos. Para aplicar acciones a instancias de una línea de tiempo, establezca la
ruta de destino (la dirección de la instancia a la que desea hacer referencia). Puede establecer
una ruta de destino absoluta o relativa.
La herramienta Insertar una ruta de destino, disponible en el panel Acciones, le solicita la
introducción de la ruta de destino para la acción seleccionada en el script.
Para insertar una ruta de destino:
1. Seleccione y sitúe el puntero en una acción del script.
2. Haga clic en Insertar una ruta de destino en la barra de herramientas del panel Acciones.
Aparecerá el cuadro de diálogo Insertar ruta de destino.
3. Siga uno de estos procedimientos:
■Introduzca manualmente la ruta de la instancia de destino.
■Seleccione el destino de la lista de destinos disponibles.
4. Seleccione la opción de ruta Relativo o Absoluto.
5. Haga clic en Aceptar.
La ruta se añade a la acción.
Comportamientos
Los comportamientos son funciones predefinidas de ActionScript que puede asociar a los
objetos del documento de Flash y que evitan que tenga que crear el código ActionScript
manualmente. Los comportamientos ofrecen funcionalidad de ActionScript escrita
previamente, como la navegación entre fotogramas, la carga de archivos SWF y JPEG
externos, el control del orden de apilamiento de los clips de película y la función de arrastre de
clips de película.
Puede utilizar los comportamientos para que la creación de una aplicación de Flash resulte
más sencilla, como forma de evitar tener que escribir código ActionScript o, por el contrario,
aprender cómo funciona el código ActionScript en determinadas situaciones.
Comportamientos65
Los comportamientos sólo están disponibles cuando se trabaja con un documento de Flash,
no con un archivo de script externo. Normalmente, se selecciona un objeto desencadenante en
el documento, un clip de película o un botón, se selecciona Añadir en el panel
Comportamientos y, seguidamente, se elige el comportamiento deseado, como se muestra en
el siguiente ejemplo:
El comportamiento se añade al objeto y se muestra en el panel Acciones.
Configuración de publicación de
ActionScript
Puede editar ActionScript de dos maneras. Se puede editar ActionScript incorporado en un
documento de Flash mediante el panel Acciones, o bien editar ActionScript existente en un
archivo de script independiente, externo al documento de Flash, mediante la ventana Script.
Dado que el panel Acciones y la ventana Script son básicamente dos vistas diferentes que
utiliza el mismo editor de ActionScript, la configuración y las preferencias para ActionScript
dentro de Flash afectan a ambas vistas.
La configuración de publicación del documento de Flash se edita para cambiar la versión de
ActionScript que debe utilizarse al publicar el documento. También puede establecer la ruta
de clases para el documento actual, omitiendo la ruta de clases global de ActionScript.
Para más información sobre la modificación de la configuración de publicación de
ActionScript, consulte “Modificación de la configuración de publicación de ActionScript” en
la página 67. Para más información sobre la configuración de una ruta de clases de documento
o global, consulte “Modificación de la ruta de clases” en la página 68.
66Escritura y edición en ActionScript 2.0
Modificación de la configuración de publicación de
ActionScript
De manera predeterminada, la versión de ActionScript al publicar un documento de Flash es
la 2.0 y la ruta de clases se hereda de la configuración de ruta de clases global. Si necesita
cambiar la versión de ActionScript o especificar una ruta de clases de documento, puede
hacerlo editando la configuración de publicación.
Para cambiar la versión de ActionScript:
1. Seleccione Archivo > Configuración de publicación y elija la ficha Flash.
2. Seleccione la versión de ActionScript en el menú emergente.
ActionScript 2.0 está seleccionado de forma predeterminada. Si escribe los scripts en
ActionScript 1.0 en lugar de 2.0, cambie esta configuración antes de publicar el
documento de Flash.
El compilador de ActionScript 2.0 compila todo el código ActionScript 1.0, con la siguiente
excepción: la sintaxis con barras (/) utilizada para indicar las rutas de clips de película (por
ejemplo,
se selecciona ActionScript 2.0 como versión de ActionScript. Para resolver este problema,
reescriba el código empleando notación de puntos (.) en lugar de barras o seleccione el
compilador de ActionScript 1.0.
Se utiliza el botón Configuración (junto al menú emergente de la versión de ActionScript)
para modificar la ruta de clases de documento. Para más información, consulte “Modificación
de la ruta de clases” en la página 68.
parentClip/testMC:varName= "hello world") genera errores de compilación si
Configuración de publicación de ActionScript67
Modificación de la ruta de clases
Al utilizar ActionScript 2.0, también podrá establecer una ruta de clases de documento. Esto
le será de utilidad al crear sus propias clases si desea sustituir la ruta de clases global de
ActionScript establecida en las preferencias de ActionScript.
El cambio de la ruta de clases en la configuración de publicación sólo afecta al archivo de Flash
actual.
Puede utilizar el cuadro de diálogo Preferencias para modificar la ruta de clases global. Para
modificar la configuración de ruta de clases de documentos, utilice el cuadro de diálogo
Configuración de publicación para el archivo FLA. En ambos casos, puede añadir rutas de
directorios absolutas (por ejemplo, C:/my_classes) y rutas de directorios relativas (por
ejemplo, ..\my_classes o ".").
Para modificar la ruta de clases global:
1. Seleccione Edición > Preferencias (Windows) o Flash > Preferencias (Macintosh) y abra el
cuadro de diálogo Preferencias.
2. Haga clic en ActionScript de la lista Categoría y seleccione Configuración de ActionScript 2.0.
3. Siga uno de estos procedimientos:
■Para añadir un directorio a la ruta de clases, haga clic en Buscar ruta, vaya al directorio
que desee añadir y haga clic en Aceptar.
También puede hacer clic en Añadir nueva ruta (+) para añadir una nueva línea a la
lista de rutas de clases. Haga doble clic en la nueva línea, escriba una ruta relativa o
absoluta y haga clic en Aceptar.
■Para editar un directorio de ruta de clases existente, seleccione la ruta en la lista de
rutas de clases, haga clic en Buscar ruta, busque el directorio que desee añadir y haga
clic en Aceptar.
También puede hacer doble clic en la ruta de la lista de rutas de clases, escribir la ruta
que desee y hacer clic en Aceptar.
■Para eliminar un directorio de la ruta de clases, seleccione la ruta en la lista de rutas de
clases y haga clic en Quitar ruta seleccionada.
NOTA
No elimine la ruta de clases global absoluta (consulte Rutas de clases globales y
de documentos). Flash utiliza esta ruta de clases para obtener acceso a clases
incorporadas. Si elimina por error esta ruta de clases, restáurela añadiendo
$(LocalData)/Classes como nueva ruta de clases.
68Escritura y edición en ActionScript 2.0
Para modificar la ruta de clases de documentos:
1. Seleccione Archivo > Configuración de publicación para abrir el cuadro de diálogo
Configuración de publicación.
2. Haga clic en la ficha Flash.
3. Haga clic en el botón Configuración situado junto al menú emergente Versión de
ActionScript.
4. Siga uno de estos procedimientos:
■Para añadir un directorio a la ruta de clases, haga clic en Buscar ruta, vaya al directorio
que desee añadir y haga clic en Aceptar.
También puede hacer clic en Añadir nueva ruta (+) para añadir una nueva línea a la
lista de rutas de clases. Haga doble clic en la nueva línea, escriba una ruta relativa o
absoluta y haga clic en Aceptar.
■Para editar un directorio de ruta de clases existente, seleccione la ruta en la lista de
rutas de clases, haga clic en Buscar ruta, busque el directorio que desee añadir y haga
clic en Aceptar.
También puede hacer doble clic en la ruta de la lista de rutas de clases, escribir la ruta
que desee y hacer clic en Aceptar.
■Para eliminar un directorio de la ruta de clases, seleccione la ruta en la lista de rutas de
clases y haga clic en Quitar ruta seleccionada.
Para más información sobre la configuración y modificación de las rutas de clases, consulte
“Configuración y modificación de la ruta de clases” en la página 211.
Archivos de configuración que se instalan con Flash 8
Al instalar Flash Basic 8 o Flash Professional 8, se colocan en el sistema una serie de carpetas y
archivos de configuración relacionados con ActionScript. Puede utilizar estos archivos para
aplicar determinadas configuraciones al entorno de edición. Como siempre, se recomienda
que realice modificaciones con precaución y guarde una copia de seguridad de los archivos que
vaya a cambiar.
Carpeta de clases de ActionScript Contiene todas las clases de ActionScript (archivos AS)
que se incluyen en Flash Professional 8 o Flash Basic 8. Esta carpeta suele estar en rutas como
las siguientes:
■ Windows: Disco duro\Documents and Settings\usuario\Configuración local\Datos de
■ Macintosh: Disco duro/Users/usuario/Library/Application Support/Macromedia/Flash 8/
idioma/Configuration/Classes.
La carpeta Classes se organiza en carpetas que incluyen directorios que contienen las clases
para Flash Player 7 (FP7) y Flash Player 8 (FP8). También contiene un directorio para el
paquete mx (mx), que se utiliza en los dos reproductores y en los archivos ASO (aso). Para
más información sobre los archivos ASO, consulte “Utilización de archivos ASO” en
la página 254. Para más información sobre la organización de este directorio, consulte el
archivo Readme de la carpeta Classes.
Carpeta de clases de inclusión Contiene todos los archivos de inclusión globales de
ActionScript y está ubicada en:
■ Windows: Disco duro\Documents and Settings\usuario\Configuración local\Datos de
■ Macintosh: Disco duro/Users/usuario/Library/Application Support/Macromedia/Flash 8/
idioma/Configuration/ActionsPanel.
70Escritura y edición en ActionScript 2.0
CAPÍTULO 3
ActionScript
Las funciones de programación orientada a objetos (OOP) de ActionScript 2.0 se basan en la
propuesta de borrador de ECMAScript 4 que actualmente está desarrollando ECMA TC39TG1 (consulte www.mozilla.org/js/language/es4/index.html). Dado que la propuesta ECMA-
4 no es todavía un estándar y continúa cambiando, ActionScript 2.0 se basa de manera estricta
en esta especificación.
ActionScript 2.0 admite todos los elementos estándar del lenguaje ActionScript; permite
escribir scripts que se ajustan mejor a los estándares utilizados en otros lenguajes orientados a
objetos, como Java. ActionScript 2.0 resultará de especial interés para los desarrolladores con
conocimientos intermedios o avanzados de Flash que crean aplicaciones que requieren la
implementación de clases y subclases. ActionScript 2.0 también permite declarar el tipo de
objeto de una variable al crearla (consulte “Asignación de tipos de datos y “strict data typing””
en la página 337) y proporciona una gestión de errores de compilador con mejoras
considerables (consulte Apéndice A, “Mensajes de error”, en la página 817).
Puntos clave de ActionScript 2.0:
■ Los scripts que utilizan ActionScript 2.0 para definir clases o interfaces deben almacenarse
como archivos de script externos, con una sola clase definida en cada script; es decir, las
clases y las interfaces no pueden definirse en el panel Acciones.
■ Puede importar archivos de clase individuales implícitamente (almacenándolos en una
ubicación especificada por rutas de búsqueda globales o específicas del documento y luego
utilizándolos en un script) o explícitamente (utilizando el comando
importar paquetes (conjuntos de archivos de clase en un directorio) utilizando caracteres
comodín.
import); puede
3
71
■ Las aplicaciones desarrolladas con ActionScript 2.0 son compatibles con Flash Player 6 y
versiones posteriores.
ATENCIÓN
La configuración de publicación predeterminada para los nuevos archivos creados
en Flash 8 es ActionScript 2.0. Si tiene previsto modificar un archivo FLA existente
con ActionScript 1.0 de modo que utilice la sintaxis de ActionScript 2.0, asegúrese
de que el archivo FLA tiene especificado ActionScript 2.0 en la configuración de
publicación. Si no lo tiene especificado, el archivo no se compilará de forma
correcta, aunque Flash no generará necesariamente errores de compilador.
Para más información sobre la utilización de ActionScript 2.0 para escribir programas
orientados a objetos en Flash, consulte el Capítulo 6, “Clases”, en la página 195.
Aunque Macromedia recomienda el uso de ActionScript 2.0, puede continuar utilizando la
sintaxis de ActionScript 1.0, especialmente si realiza trabajos más tradicionales de Flash, como
animaciones sencillas que no exijan interacción del usuario.
Qué es ActionScript
Las características principales de ActionScript 2.0 son las siguientes:
Modelo común de programación orientada a objetos (OOP, Object Oriented
Programming)
programas orientados a objetos. ActionScript 2.0 implementa varios nuevos conceptos y
palabras clave de programación orientada a objetos, como por ejemplo clase, interfaz y
paquetes, con los que estará familiarizado si ha programado alguna vez en código Java.
El modelo OOP que proporciona ActionScript 2.0 es una “formalización sintáctica” del
método de cadenas prototipo utilizado en versiones anteriores de Macromedia Flash para crear
objetos y establecer la herencia. Con ActionScript 2.0, puede crear clases personalizadas y
ampliar las clases incorporadas en Flash.
Strict data typing ActionScript 2.0 también permite especificar de forma explícita tipos de
datos para variables, parámetros de función y tipos de devolución de funciones. Por ejemplo,
en el siguiente código se declara una variable denominada
o un tipo de datos de ActionScript incorporado).
var userName:String = "";
Advertencias y errores del compilador Las dos funciones anteriores permiten a la
herramienta de edición y al compilador proporcionar advertencias y mensajes de error que le
ayudan a encontrar los fallos en las aplicaciones con más rapidez que anteriormente en Flash.
La principal función de ActionScript 2.0 es un modelo común para crear
userName de tipo String (una clase
72ActionScript
Al utilizar ActionScript 2.0, asegúrese de que la configuración de publicación del archivo FLA
especifica ActionScript 2.0. Ésta es la configuración predeterminada para los archivos creados
con Flash MX 2004 y Flash 8. No obstante, si abre un archivo FLA más antiguo que utiliza
ActionScript 1.0 y lo reescribe utilizando ActionScript 2.0, debe cambiar la configuración de
publicación del archivo FLA a ActionScript 2.0. Si no lo hace, el archivo FLA no se compilará
correctamente y no se generarán errores.
Selección entre ActionScript 1.0 y
ActionScript 2.0
Cuando se inicia un nuevo documento o aplicación en Flash, debe decidirse cómo organizar
los archivos asociados. Pueden utilizarse clases en algunos proyectos, por ejemplo, para crear
aplicaciones o archivos FLA complejos, pero no todos los documentos utilizan clases. Por
ejemplo, en muchos ejemplos breves de la documentación no se utilizan clases. Utilizar clases
para almacenar funcionalidad no es la mejor solución ni la más sencilla en las aplicaciones
pequeñas o en los archivos FLA sencillos. Suele resultar más eficaz colocar el código
ActionScript dentro del documento. En este caso, intente colocar todo el código en el menor
número de fotogramas posible de la línea de tiempo y evite colocar código en las instancias
(por ejemplo, botones o clips de película) de un archivo FLA.
Cuando se crea un proyecto pequeño, suele ser más trabajoso utilizar clases o archivos de
código externos para organizar el código ActionScript que añadir el código ActionScript al
archivo FLA. En ocasiones, es más sencillo mantener todo el código ActionScript en el archivo
FLA en lugar de colocarlo en una clase importada. Esto no significa que deba utilizar
necesariamente ActionScript 1.0. Podría decidir colocar el código dentro del archivo FLA
mediante ActionScript 2.0 con la función “strict data typing” y los nuevos métodos y
propiedades. ActionScript 2.0 también ofrece una sintaxis que cumple los estándares de otros
lenguajes de programación. De esta forma, es más sencillo y útil aprender el lenguaje. Por
ejemplo, se sentirá familiarizado con ActionScript si encuentra otro lenguaje basado en los
mismos estándares de estructura y sintaxis. O bien podrá aplicar este conocimiento a otros
lenguajes que aprenda en el futuro. ActionScript 2.0 permite utilizar un enfoque orientado a
objetos para desarrollar aplicaciones a través de un conjunto adicional de elementos de
lenguaje, lo que puede ser ventajoso para el desarrollo de la aplicación.
En algunos casos, no es posible elegir la versión de ActionScript que se utilizará. Si crea un
archivo SWF destinado a una versión anterior de Flash Player como, por ejemplo, una
aplicación para dispositivo móvil, debe utilizar ActionScript 1.0, que es compatible con Flash
Player en distintos dispositivos.
Selección entre ActionScript 1.0 y ActionScript 2.073
Recuerde que debería seguir las prácticas recomendadas, independientemente de la versión de
ActionScript. En ambas versiones se aplican muchas de estas prácticas, como mantener la
coherencia en el uso de mayúsculas y minúsculas, utilizar la capacidad de completar código,
mejorar la legibilidad, evitar las palabras clave en los nombres de instancia y mantener una
convención de asignación de nombres coherente.
Si tiene previsto actualizar la aplicación en futuras versiones de Flash, o aumentarla y hacerla
más compleja, debería utilizar ActionScript 2.0 y las clases para que sea más sencillo
actualizarla y modificarla.
ActionScript y Flash Player
Si compila un archivo SWF que contiene ActionScript 2.0 con una configuración de
publicación establecida en Flash Player 6 y ActionScript 1.0, el código funcionará mientras no
se utilicen clases de ActionScript 2.0. El código no distingue entre mayúsculas y minúsculas,
sólo en Flash Player. Sin embargo, si se compila el archivo SWF con la opción Configuración
de publicación establecida en Flash Player 7 y ActionScript 1.0, Flash aplica la distinción entre
mayúsculas y minúsculas.
Las anotaciones de tipos de datos (tipos de datos estrictos) se aplican durante el tiempo de
compilación para Flash Player 7 y 8 cuando la configuración de publicación está establecida
en ActionScript 2.0.
ActionScript 2.0 se compila al código de bits de ActionScript 1.0 cuando publica las
aplicaciones, de forma que puede utilizar la versión Flash Player 6, 7 u 8 mientras trabaja con
ActionScript 2.0.
74ActionScript
CAPÍTULO 4
Principios básicos de la
sintaxis y el lenguaje
El aprendizaje de la sintaxis y las sentencias de ActionScript es como aprender a crear frases
mediante la combinación de palabras, para luego formar párrafos enteros. ActionScript puede
resultar así de sencillo. Por ejemplo, en español, el punto indica el final de una frase; en
ActionScript, el final de una sentencia se indica mediante un punto y coma. En el lenguaje
ActionScript, puede escribir una acción
instancia de clip de película o la reproducción indefinida de un archivo SWF. O bien puede
escribir miles de líneas de código que permitan hacer funcionar a una aplicación de banca
interactiva. Como puede comprobar, ActionScript puede hacer cosas muy sencillas o muy
complejas.
En el Capítulo 10, “Datos y tipos de datos”, hemos aprendido de qué forma usa el lenguaje
ActionScript los datos y cómo puede aplicarle formato en el código. En este capítulo se
describe cómo formar sentencias en ActionScript utilizando su sintaxis. Contiene numerosos
fragmentos pequeños de código y algunos ejemplos que permiten demostrar los conceptos
básicos de este lenguaje. En posteriores capítulos se incluyen ejemplos de código más largos y
progresivamente complejos en los que se combinan y aplican los conceptos descritos en este
capítulo.
Las reglas generales descritas en esta sección son aplicables a todo el lenguaje ActionScript.
La mayoría de los términos de ActionScript también tienen sus propios requisitos; para saber
cuáles son las reglas de un término determinado, consulte la entrada correspondiente en
Referencia del lenguaje ActionScript 2.0.
La aplicación de los conceptos básicos de ActionScript de manera que se obtengan programas
elegantes puede resultar una tarea ardua para los usuarios sin experiencia en ActionScript. Para más
información sobre cómo aplicar las reglas descritas en esta sección, consulte el Capítulo 19,
“Recomendaciones y convenciones de codificación para ActionScript 2.0”, en la página 775.
NOTA
En este capítulo, se añade código ActionScript directamente a un fotograma de la línea
de tiempo. En capítulos posteriores, se utilizan clases para separar el código
ActionScript del archivo FLA.
stop() para detener la cabeza lectora de una
4
75
Para más información sobre los aspectos básicos de la utilización de la sintaxis y el lenguaje
ActionScript, consulte los temas siguientes:
El lenguaje ActionScript está formado por clases incorporadas. Deberá utilizar la sintaxis
correcta de ActionScript 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 intente
comprobar el documento en el entorno de prueba. 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
determinar la siguiente acción que debe tener lugar en el código.
// sentencia if
if (condition) {
// sentencias;
}
Para más información sobre sentencias, consulte “Sentencias” en la página 106.
Las expresiones, a diferencia de las sentencias, son cualquier combinación válida de símbolos de
ActionScript que representan un valor. Las expresiones tienen valores, mientras que los valores
y las propiedades tienen tipos. Una expresión puede estar formada por operadores y operandos,
valores, funciones y procedimientos. La expresión sigue las reglas de prioridad y asociación de
ActionScript. Normalmente, Flash Player interpreta la expresión y luego devuelve un valor
que puede utilizar en la aplicación.
if es una sentencia condicional que evalúa una condición para
76Principios básicos de la sintaxis y el lenguaje
Por ejemplo, el siguiente código es una expresión:
x + 2
En la expresión anterior, x y 2 son operandos y + es un operador. Para más información sobre
operadores y operandos, consulte “Operadores” en la página 142. Para más información sobre
objetos y propiedades, consulte “Tipo de datos Object (objeto)” en la página 335.
El modo en que aplique formato al código ActionScript también determinará las posibilidades
de mantenimiento de dicho código. Por ejemplo, es difícil leer la lógica de un archivo FLA
que no tenga sangrías ni comentarios o que presenten un formato y unas convenciones de
asignación de nombres incoherentes. Al sangrar los bloques de código ActionScript (como
bucles y sentencias
if), el código resulta más fácil de leer y depurar en el caso de que se
detecten problemas. Para más información sobre la aplicación de formato de ActionScript,
consulte “Aplicación de formato a la sintaxis de ActionScript” en la página 808. También
encontrará una aplicación correcta de formato al código ActionScript en estas secciones.
Para más información sobre los principios básicos de la sintaxis y el lenguaje, consulte los
siguientes temas:
■ “Diferencias entre ActionScript y JavaScript”
■ “Distinción entre mayúsculas y minúsculas”
Diferencias entre ActionScript y JavaScript
ActionScript es parecido al lenguaje de programación JavaScript. No es necesario tener
conocimientos de JavaScript para utilizar y aprender ActionScript; sin embargo, si los tiene,
ActionScript le resultará familiar.
En este manual no se pretende enseñar programación en general. Existen muchos recursos
disponibles que proporcionan información sobre los conceptos generales de programación y
sobre el lenguaje JavaScript.
■ La especificación del lenguaje ECMAScript (ECMA-262) edición 3 se deriva de JavaScript
y sirve de estándar internacional del lenguaje JavaScript. ActionScript se basa en esta
especificación. Para más información, consulte www.ecma-international.org/publications/
standards/Ecma-262.htm.
■ El sitio sobre tecnología Java dispone de tutoriales sobre programación orientada a objetos
(http://java.sun.com/docs/books/tutorial/java/index.html) específicamente diseñados para
el lenguaje Java, aunque resultan útiles para comprender conceptos que puede aplicar a
ActionScript.
Sintaxis, sentencias y expresiones77
En la siguiente lista se detallan algunas de las diferencias entre ActionScript y JavaScript:
■ 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 www.ecma-international.org/publications/standards/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.
Distinción entre mayúsculas y minúsculas
Al escribir código ActionScript para Flash Player 7 y versiones posteriores, el código distingue entre
mayúsculas y minúsculas. Esto significa que las variables con ligeras diferencias de mayúsculas y
minúsculas se consideran diferentes entre sí. Esto se muestra en el siguiente código ActionScript:
// se utiliza una combinación de mayúsculas y minúsculas
var firstName:String = "Jimmy";
// se utilizan sólo minúsculas
trace(firstname); // undefined
O bien puede escribir lo siguiente:
// En archivos de Flash Player 8
// y ActionScript 1,0 o ActionScript 2.0
//
// Define las propiedades de dos objetos diferentes
cat.hilite = true;
CAT.hilite = true;
// Crea tres variables diferentes
var myVar:Number = 10;
var myvar:Number = 10;
var mYvAr:Number = 10;
NOTA
No es recomendable diferenciar entre variables o cualquier identificador mediante
mayúsculas y minúsculas. Para más información sobre la asignación de nombres a las
variables, consulte el Capítulo 19, “Recomendaciones y convenciones de codificación
para ActionScript 2.0”, en la página 775.
78Principios básicos de la sintaxis y el lenguaje
Cuando publique para versiones de Flash Player (Flash Player 6 y anteriores), Flash traza la
cadena
Jimmy en el panel Salida. Dado que Flash Player 7 y versiones posteriores distinguen
entre mayúsculas y minúsculas,
firstName y firstname son dos variables independientes
(cuando se utiliza ActionScript 1.0 o ActionScript 2.0). Es importante entender este
concepto. Si ha creado archivos FLA para Flash Player 6 o versiones anteriores con uso
diferente de mayúsculas y minúsculas en las variables, la funcionalidad y los archivos podrían
romperse al convertir el archivo o la aplicación para una versión más reciente de Flash Player.
Por consiguiente, se recomienda seguir convenciones coherentes de uso de mayúsculas y
minúsculas, como las que se utilizan en este manual. Al hacerlo de esta forma, también
resultará más fácil distinguir variables, clases y nombres de función. No utilice mayúsculas y
minúsculas para distinguir entre dos identificadores. Cambie el nombre de la instancia,
variable o clase y no exclusivamente las mayúsculas y minúsculas. Para más información sobre
convenciones de codificación, consulte el Capítulo 19, “Recomendaciones y convenciones de
codificación para ActionScript 2.0”, en la página 775.
La distinción entre mayúsculas y minúsculas puede ser determinante si se trabaja con un
servicio Web que utilice sus propias reglas de asignación de nombres de variables y puede
afectar al uso de mayúsculas y minúsculas en las variables cuando se devuelven al archivo SWF
desde el servidor. Por ejemplo, si utiliza un servicio Web de ColdFusion, los nombres de
propiedades de una estructura u objeto pueden tener sólo mayúsculas como, por ejemplo,
FIRSTNAME. A menos que utilice las mismas mayúsculas y minúsculas en Flash, cabe la
posibilidad de que obtenga resultados inesperados.
NOTA
La distinción entre mayúsculas y minúsculas también afecta a las variables externas que
se cargan en un archivo SWF, como, por ejemplo, las que se cargan con
LoadVars.load().
La distinción entre mayúsculas y minúsculas se aplica a los scripts externos, como los archivos
de clase de ActionScript 2.0, los scripts que se importan empleando el comando
#include y
los scripts de un archivo FLA. Si encuentra errores de tiempo de ejecución y está exportando a
más de una versión de Flash Player, deberá revisar los archivos de script externos y los scripts
de archivos FLA para confirmar que ha utilizado las mayúsculas de forma coherente.
La distinción entre mayúsculas y minúsculas se aplica por cada archivo SWF concreto. Si una
aplicación Flash Player 8 (que distingue entre mayúsculas y minúsculas) estricta llama a un
archivo SWF de Flash Player 6 no estricto, el código ActionScript ejecutado en el archivo
SWF de Player 6 será no estricto. Por ejemplo, si utiliza
loadMovie() para cargar un archivo
SWF de Flash Player 6 en un archivo SWF de Flash Player 8, el archivo SWF de la versión 6
continuará sin distinguir entre mayúsculas y minúsculas, mientras que el SWF de la versión 8
se considerará como archivo que distingue entre mayúsculas y minúsculas.
Si activa la función Color de sintaxis, los elementos del lenguaje que haya escrito con el
formato correcto de mayúsculas y minúsculas aparecen en azul de forma predeterminada.
Para más información, consulte “Palabras reservadas” en la página 104.
Sintaxis, sentencias y expresiones79
Sintaxis con puntos y rutas de destino
En ActionScript, el operador de punto (.) (sintaxis con puntos) permite acceder a propiedades
y métodos que pertenecen a un objeto o instancia del escenario. También puede utilizar el
operador de punto para identificar la ruta de destino de una instancia (como, por ejemplo, un
clip de película), una variable, una función o un objeto.
Una expresión que utiliza la sintaxis con puntos empieza por el nombre del objeto o clip de
película seguido de un punto y termina con el elemento que desee especificar. En las siguientes
secciones se describe cómo escribir expresiones que utilizan la sintaxis con punto.
Para controlar un clip de película, archivo SWF cargado o un botón, es preciso especificar una
ruta de destino. Las rutas de destino son direcciones jerárquicas de nombres de instancias de
clips de película, variables y objetos de un archivo SWF. Para especificar una ruta de destino de
un clip de película o botón, debe asignar un nombre de instancia al clip de película o botón.
El nombre de una instancia de clip de película se asigna seleccionando la instancia y
escribiendo el nombre de la instancia en el inspector de propiedades del clip de película.
También puede especificar el nombre de instancia con código si crea la instancia mediante
ActionScript. Se puede utilizar la ruta de destino para asignar una acción a un clip de película
u obtener o definir el valor de una variable o propiedad.
Para más información sobre la asignación de un nombre de instancia y el uso de la sintaxis con
punto para referirse a una instancia, consulte los siguientes temas:
■ “Utilización de la sintaxis con punto para referirse a una instancia” en la página 81.
■ “Ámbito y referencias” en la página 86
■ “Utilización del botón Ruta de destino” en la página 87
■ “Sintaxis con barras” en la página 87
Para más información sobre objetos y propiedades, consulte “Tipo de datos Object (objeto)”
en la página 335.
80Principios básicos de la sintaxis y el lenguaje
Utilización de la sintaxis con punto para referirse a
una instancia
Para escribir código ActionScript que controle una instancia, como, por ejemplo, un clip de
película, o que manipule activos en un archivo SWF cargado, deberá especificar su nombre y
dirección en el código. Esto se conoce como ruta de destino. Para hacer referencia a objetos en
un archivo SWF, se utiliza la sintaxis con punto (también conocida como notación con puntos).
Por ejemplo, es necesario hacer referencia a una instancia de un clip de película o un botón
antes de aplicarle una acción. La sintaxis con punto le ayuda a crear una ruta de acceso a la
instancia a la que debe referirse. La ruta de acceso a la instancia a la que debe referirse a veces
se denomina ruta de destino.
Un archivo FLA tiene una jerarquía concreta. Puede crear instancias en el escenario o utilizar
código ActionScript. Puede incluso crear instancias que estén dentro de otras instancias. O
puede que tenga instancias anidadas dentro de otras instancias. Puede manipular cualquier
instancia siempre y cuando le asigne un nombre.
Para asignar nombre a las instancias, deberá utilizar un nombre de instancia, que puede
especificar de dos formas diferentes (descritas a continuación):
■ Manualmente, seleccionando una instancia y escribiendo un nombre de instancia en el
inspector de propiedades (cuando una instancia se encuentra en el escenario).
■ Dinámicamente, utilizando ActionScript. Puede crear una instancia mediante código
ActionScript y asignarle un nombre de instancia al crearla.
Para asignarle un nombre a la instancia en el inspector de propiedades, escriba el nombre en el
cuadro de texto Nombre de instancia.
También puede asignar un nombre de instancia a un objeto que cree mediante código
ActionScript. Esta operación puede resultar tan sencilla como el siguiente código:
Este código crea un nuevo clip de película, al que asigna el nombre de instancia pic_mc.
Seguidamente, puede manipular la instancia
una imagen en ella, como se muestra en el código anterior.
Para más información sobre la utilización de ámbitos, consulte “Ámbito y referencias” en
la página 86 y “Variables y ámbito” en la página 354.
pic_mc utilizando código, por ejemplo, cargando
Sintaxis con puntos y rutas de destino81
Referencia a una instancia
Si desea que algo funcione en el archivo SWF, deberá hacer referencia a la instancia en
cuestión y luego indicarle que haga algo, como asignarle una acción o cambiar su propiedades.
Normalmente deberá definir el lugar en el que se encuentra dicha instancia en el archivo SWF
(por ejemplo, en qué línea de tiempo se encuentra o en qué instancia está anidada) mediante
la creación de la ruta de destino. Recuerde que ha asignado nombres de instancia a muchas de
las instancias del archivo FLA y que luego ha añadido código al archivo FLA que utiliza dichos
nombres de instancias. Al hacer esto, está haciendo referencia a dicha instancia en particular e
indicándole que haga algo (por ejemplo, mover la cabeza lectora o abrir una página Web).
Para más información sobre objetos y propiedades, consulte “Tipo de datos Object (objeto)”
en la página 335.
Para hacer referencia a una instancia:
1. Seleccione Archivo > Nuevo y seleccione Documento de Flash.
2. Seleccione Archivo > Guardar como y asigne al archivo el nombre target.fla.
3. Dibuje una figura en el escenario con la herramienta Óvalo. Dibuje un óvalo de cualquier
tamaño y color.
4. Con la herramienta Selección, seleccione el óvalo en el escenario.
SUGERENCIA
Recuerde que debe seleccionar el trazo y el relleno si es preciso.
5. Seleccione Modificar > Convertir en símbolo, elija la opción Clip de Película y luego haga
clic en Aceptar para crear el símbolo.
6. Seleccione el clip de película en el escenario y asígnele el nombre de instancia myClip en el
inspector de propiedades.
7. Inserte una capa nueva y asígnele el nombre actions.
8. Añada el siguiente código ActionScript al fotograma 1 de la capa actions:
myClip._xscale = 50;
Esta línea de código hace referencia a la instancia myClip del escenario. El código
ActionScript redimensiona la instancia con la mitad de su anchura original. Dado que el
código ActionScript está en la misma línea de tiempo que el símbolo del clip de película,
sólo tendrá que hacer referencia a la instancia utilizando el nombre de instancia. Si la
instancia estuviera en una línea de tiempo diferente o anidada dentro de otra instancia,
tendría que adaptar la correspondiente ruta de destino.
82Principios básicos de la sintaxis y el lenguaje
Referencia a una instancia anidada
También puede referirse a instancias que estén anidadas dentro de otras instancias. Quizá
desee colocar una segunda instancia de clip de película dentro de la instancia myClip del
ejercicio realizado en “Referencia a una instancia” en la página 82. También puede referirse a
dicha instancia anidada utilizando ActionScript. Antes de continuar con el siguiente ejercicio,
deberá finalizar el ejercicio “Referencia a una instancia” en la página 82 y, seguida mente ,
realizar los pasos para hacer referencia a una instancia anidada.
Para referirse a una instancia anidada:
1. Abra el archivo target.fla creado en el procedimiento de hacer referencia a una instancia y
cámbiele el nombre a target2.fla.
2. Haga doble clic en la instancia myClip del escenario.
3. Seleccione la herramienta Óvalo y dibuje otro óvalo dentro de la instancia myClip.
4. Seleccione la nueva figura y, a continuación, elija Modificar > Convertir en símbolo.
5. Seleccione la opción MovieClip y haga clic en Aceptar.
6. Seleccione la nueva instancia y escriba myOtherClip en el cuadro de texto Nombre de
instancia del inspector de propiedades.
7. Haga clic en la escena 1 de la barra de edición para regresar a la línea de tiempo principal.
8. Añada el siguiente código ActionScript al fotograma 1 de la capa actions:
myClip.myOtherClip._xscale = 50;
Este código ActionScript asigna a la instancia myOtherClip el 50% de su anchura
original. Dado que el archivo target.fla modificó la propiedad
myClip y que myOtherClip es un símbolo anidado, observará que myOtherClip presenta
una anchura equivalente al 25 por ciento de su anchura original.
Si utiliza clips de película anidados que tengan sus propias líneas de tiempo, podrá manipular
la cabeza lectora de la línea de tiempo de una instancia anidada empleando un código similar
al del siguiente fragmento:
Observe que el clip que usted manipula (como, por ejemplo, nestedClip) aparece justo antes
de la acción. Observará esta tendencia en posteriores secciones.
_xscale de las instancias de
Sintaxis con puntos y rutas de destino83
No sólo puede acceder a métodos y propiedades predefinidas de instancias del escenario,
como se muestra en los ejemplos anteriores. También puede establecer una variable dentro de
un clip de película, como se aprecia en el siguiente código, que establece una variable en el clip
de película starClip:
starClip.speed = 1.1;
starClip.gravity = 0.8;
Si las variables de velocidad o gravedad existieran con anterioridad en la instancia del clip de
película starClip, los valores anteriores se habrían sobrescrito de inmediato al establecer las
nuevas variables. Puede añadir nuevas propiedades al clip de película starClip, ya que la clase
MovieClip se definió con la palabra clave
dynamic. La palabra clave dynamic especifica que los
objetos basados en la clase especificada (en este caso MovieClip) pueden añadir propiedades
dinámicas y acceder a ellas en tiempo de ejecución. Para más información sobre la sentencia
dinámica, consulte dynamic statement en Referencia del lenguaje ActionScript 2.0.
Referencia a instancias dinámicas y contenido cargado
También puede crear un objeto empleando código ActionScript y hacer referencia a él
posteriormente mediante una ruta de destino. Por ejemplo, puede utilizar el siguiente código
ActionScript para crear un clip de película. Luego puede cambiar el giro de dicho clip de
película empleando código ActionScript, como se muestra en el siguiente ejemplo:
Para hacer referencia a una instancia de clip de película creada
dinámicamente:
1. Cree un nuevo documento Flash y guarde el archivo como targetClip.fla.
2. Inserte una capa nueva y asígnele el nombre actions.
3. Añada el siguiente código ActionScript al fotograma 1 de la capa actions:
Seleccione Control > Probar película para probar el documento.
La presencia de la sentencia trace indica que ha creado un clip de película, pero no puede
ver nada en el escenario. Aunque haya añadido código que cree una instancia de clip de
película, no verá nada en el escenario a no ser que añada algo al clip de película. Por
ejemplo, puede cargar una imagen en el clip de película.
5. Regrese al entorno de edición y abra el panel Acciones.
84Principios básicos de la sintaxis y el lenguaje
6. Escriba el siguiente código ActionScript detrás del código añadido en el paso 3:
Este código carga una imagen en el clip de película rotateClip que ha creado mediante
código. Se hace referencia a la instancia rotateClip mediante código ActionScript.
7. Seleccione Control > Probar película para probar el documento.
Ahora debería de ver una imagen en el escenario que gira 50º en el sentido de las agujas del
reloj.
También puede hacer referencia o identificar partes de un archivo SWF que se cargan en un
archivo SWF base.
Para identificar un archivo SWF cargado:
■ Utilice _levelX, donde X es el número de nivel especificado en la función loadMovie()
que ha cargado el archivo SWF.
Por ejemplo, un archivo SWF que se ha cargado en el nivel 99 tiene la ruta de destino
_level99. En el ejemplo siguiente, se carga un archivo SWF en el nivel 99 y su visibilidad
se establece en
//Cargue SWF en el nivel 99.
loadMovieNum("contents.swf", 99);
//Establezca la visibilidad del nivel 99 como false.
loaderClip.onEnterFrame = function(){
_level99._visible = false;
};
SUGERENCIA
Normalmente resulta aconsejable evitar el uso de niveles si en su lugar puede cargar
contenido en clips de película de diferentes profundidades. El método
MovieClip.getNextHighestDepth() le permite crear nuevas instancias de clip de
película en el escenario dinámicamente sin tener que comprobar si ya hay una
instancia en una determinada profundidad.
false:
Definición de variables mediante una ruta
Puede definir variables para instancias anidadas dentro de otras instancias. Por ejemplo, si
desea definir una variable para un formulario situado dentro de otro formulario, puede utilizar
el siguiente código. La instancia submitBtn está dentro de
principal:
this.formClip.submitBtn.mouseOver = true;
Puede expresar un método o propiedad para un objeto concreto (como un clip de película o
un campo de texto) siguiendo este patrón. Por ejemplo, la propiedad de un objeto sería
myClip._alpha = 50;
formClip en la línea de tiempo
Sintaxis con puntos y rutas de destino85
Ámbito y referencias
Al anidar instancias, el clip de película que anida un segundo clip de película se conoce como
instancia principal de la instancia anidada. La instancia anidada se conoce como instancia
secundaria. El escenario principal y la línea de tiempo principal son básicamente un clip de
película en sí mismos, por lo que se puede hacer referencia a ellos como tal. Para más
información sobre ámbitos, consulte “Variables y ámbito” en la página 354.
Puede hacer referencia a instancias principales y líneas de tiempo principales mediante código
ActionScript. Cuando desee hacer referencia a la línea de tiempo actual, deberá utilizar la
palabra clave
myClip situado en la línea de tiempo principal actual, deberá utilizar
this.myClip.
Opcionalmente, puede colocar la palabra clave this y utilizar simplemente
myClip
Puede optar por añadir la palabra clave this para lograr una mayor legibilidad y coherencia.
Para más información sobre prácticas de codificación recomendadas, consulte el Capítulo 19,
“Recomendaciones y convenciones de codificación para ActionScript 2.0”, en la página 775.
Si traza el clip de película para cualquiera de los anteriores fragmentos, observará
_level0.myClip en el panel Salida. No obstante, si tiene código ActionScript situado dentro
del clip de película myClip pero desea hacer referencia a la línea de tiempo principal, haga
referencia al clip de película principal (que es el escenario principal). Haga doble clic en un
clip de película y coloque el siguiente código ActionScript en la línea de tiempo del clip de
película:
Pruebe el archivo SWF y verá el siguiente mensaje en el panel Salida:
me: _level0.myClip
my parent: _level0
Esto indica que ha hecho referencia a la línea de tiempo principal. Puede utilizar parent para
crear una ruta relativa a un objeto. Por ejemplo, si el clip de película
dentro del clip de película de animación animalClip, la siguiente sentencia de la instancia
dogClip indica a animalClip que interrumpa la animación:
this._parent.stop();
this. Por ejemplo, para hacer referencia a un clip de película denominado
dogClip está anidado
86Principios básicos de la sintaxis y el lenguaje
Si está familiarizado con Flash y ActionScript, es posible que haya observado que hay usuarios
que emplean el ámbito _
tiempo principal del documento Flash actual. Debe evitar utilizar el ámbito _
root. El ámbito _root generalmente hace referencia a la línea de
root a no ser
que resulte absolutamente necesario. Puede utilizar rutas de destino relativas en lugar de
_root.
Si utiliza
_root en el código, puede que encuentre errores al cargar el archivo SWF en otro
documento de Flash. Al cargarse el archivo SWF en otro archivo SWF diferente, puede que
_root en el archivo cargado señale al ámbito raíz del archivo SWF en el que se carga en lugar
de hacer referencia a su propia raíz como era su intención. Esto puede producir resultados
impredecibles o romper completamente la funcionalidad.
Utilización del botón Ruta de destino
En ocasiones, lleva tiempo averiguar cuál la ruta de destino o qué ruta de destino necesita para
un código determinado. Si hace referencia a una instancia del escenario, puede utilizar el
botón Ruta de destino para determinar la ruta de dicha instancia.
Para utilizar el botón de ruta de destino:
1. Abra el panel Acciones (Ventana > Acciones) y haga clic en el botón Insertar una ruta de
destino. Los clips de película del documento actual aparecen en un cuadro de diálogo.
2. Seleccione una de las instancias de la lista del cuadro de diálogo.
3. Haga clic en Aceptar.
4. La ruta de destino de la instancia seleccionada aparece en el panel Script.
Sintaxis con barras
La sintaxis con barras se utilizó en Flash 3 y 4 para indicar la ruta de destino de un clip de
película o de una variable. Esta sintaxis es compatible con ActionScript 1.0 en Flash Player 7 y
versiones anteriores, pero no es compatible con ActionScript 2.0 y Flash Player 7 o Flash
Player 8.
No es recomendable utilizar la sintaxis con barras, a no ser que no tenga otra opción, como al
crear contenido específicamente pensado para Flash Player 4 o Flash Lite 1.1 (y versiones
anteriores), donde es preciso usar la sintaxis con barras. Para más información sobre Flash Lite,
consulte la página del producto Flash Lite.
Sintaxis con puntos y rutas de destino87
Signos de lenguaje
Existen diversos signos de lenguaje en Flash. El tipo más habitual de signos son el punto y
coma (
;), los dos puntos (:), los paréntesis [()] y las llaves ({}). Cada uno de estos signos
tiene un significado específico en el lenguaje de Flash y contribuye a definir tipos de datos,
terminar sentencias o estructurar el código ActionScript. En las siguientes secciones se
describe cómo utilizar los signos en el código.
Para más información sobre los signos de lenguaje, consulte los siguientes temas:
■ “Punto y coma y dos puntos” en la página 88
■ “Llaves” en la página 89
■ “Paréntesis” en la página 93
■ “Literales” en la página 94
■ “Comentarios” en la página 95
Para más información sobre el operador de punto (
(
[]), consulte “Utilización de operadores de punto y de acceso a una matriz” en la página 152.
Para más información sobre los espacios en blanco y la aplicación de formato al código,
consulte “Aplicación de formato a la sintaxis de ActionScript” en la página 808.
Punto y coma y dos puntos
Las sentencias de ActionScript terminan con un carácter de punto y coma (;), como se
muestra en las dos líneas de código siguientes:
var myNum:Number = 50;
myClip._alpha = myNum;
Aunque omita el carácter de punto y coma, el compilador de ActionScript dará por hecho que
cada línea de código representa a una sentencia independiente. No obstante, el uso del punto
y coma es una práctica recomendable en la creación de scripts porque permite lograr una
mejor legibilidad del código. Al hacer clic en el botón Formato automático del panel Acciones
o la ventana Script, se añaden puntos y comas finales al terminar la sentencia de manera
predeterminada.
NOTA
El uso del punto y coma para terminar una sentencia le permite colocar más de una
sentencia en una misma línea, pero, al hacerlo, normalmente el código resulta más difícil
de leer.
.) y los operadores de acceso a matrices
88Principios básicos de la sintaxis y el lenguaje
Otro lugar en el que se utiliza el punto y coma es en los bucles for. El punto y coma permite
separar parámetros, como se muestra en el siguiente ejemplo. El ejemplo reproduce
indefinidamente de 0 a 9 y luego muestra cada número en el panel Salida:
var i:Number;
for (i = 0; i < 10; i++) {
trace(i); // 0,1,...,9
}
Los dos puntos (:) se utilizan en el código para asignar tipos de datos a las variables. Para
asignar un tipo de datos específico a un elemento, especifique el tipo con la palabra clave
var
y la sintaxis de signo de dos puntos posterior, como se muestra en el siguiente ejemplo:
// "strict typing" de variable u objeto
var myNum:Number = 7;
var myDate:Date = new Date();
// "strict typing" de los parámetros
function welcome(firstName:String, myAge:Number) {
}
// "strict typing" de los parámetros y del valor devuelto
function square(num:Number):Number {
var squared:Number = num * num;
return squared;
}
Puede declarar el tipo de datos de objetos basándose en clases incorporadas (Button, Date,
MovieClip, etc.) y en las clases e interfaces que haya creado. En el siguiente fragmento, se crea
un nuevo objeto del tipo personalizado Student:
var firstStudent:Student = new Student();
También puede especificar que los objetos sean del tipo de datos Function o Void. Para más
información sobre la asignación de tipos de datos, consulte el Capítulo 10, “Datos y tipos de
datos”, en la página 327.
Llaves
Las llaves ({}) permiten agrupar eventos, definiciones de clases y funciones de ActionScript en
bloques. La llave inicial se coloca en la misma línea que la declaración.
NOTA
También puede colocar la llave inicial en la línea que sigue a la declaración. Las
convenciones de codificación recomiendan colocar la llave inicial en la misma línea para
lograr mayor coherencia. Para más información sobre llaves y convenciones del código,
consulte el Capítulo 19, “Recomendaciones y convenciones de codificación para
ActionScript 2.0”, en la página 775.
Signos de lenguaje89
Coloque llaves alrededor de las sentencias cuando formen parte de una estructura de control
(como, por ejemplo,
if..else o for), aunque contengan una sola sentencia. Esta práctica
recomendada le ayuda a evitar errores en el código ActionScript cuando se olvida de añadir
llaves al código. En el siguiente ejemplo se muestra código escrito con un formato insuficiente:
var numUsers:Number;
if (numUsers == 0)
trace("no users found.");
Aunque este código es válido, se considera que su formato es insuficiente porque las sentencias
no aparecen entre llaves.
SUGERENCIA
Si hace clic en el botón Revisar sintaxis, se añadirán llaves a esta sentencia.
En este caso, si añade una segunda sentencia después de la sentencia trace, la segunda
sentencia se ejecutará independientemente de que la variable
numUsers sea igual a 0, lo que
puede provocar resultados inesperados. Por este motivo, añada llaves al código como se
muestra en el siguiente ejemplo:
var numUsers:Number;
if (numUsers == 0) {
trace("no users found");
}
En el siguiente ejemplo, se crea un objeto de detector de eventos y una instancia de
MovieClipLoader.
var imgUrl:String = "http://www.helpexamples.com/flash/images/image1.jpg";
this.createEmptyMovieClip("img_mc", 100);
var mclListener:Object = new Object();
mclListener.onLoadStart = function() {
trace("failure");
};
var myClipl:MovieClipLoader = new MovieClipLoader();
myClipl.addListener(mclListener);
myClipl.loadClip(imgUrl, img_mc);
En el siguiente ejemplo se muestra un archivo de clase sencillo que podría utilizarse para crear
un objeto Student. Encontrará más información sobre archivos de clases en el Capítulo 6,
“Clases”, en la página 195.
90Principios básicos de la sintaxis y el lenguaje
Para utilizar llaves en un archivo de ActionScript:
1. Seleccione Archivo > Nuevo y, a continuación, Archivo ActionScript.
2. Seleccione Archivo > Guardar como y guarde el nuevo documento con el nombre
Student.as.
3. Añada el siguiente código ActionScript al archivo AS.
// Student.as
class Student {
private var _id:String;
private var _firstName:String;
private var _middleName:String;
private var _lastName:String;
public function Student(id:String, firstName:String,
middleName:String, lastName:String) {
Seleccione Archivo > Guardar para guardar el documento de Flash.
10. Seleccione Control > Probar película para comprobar el código en el entorno de edición.
En el archivo SWF, aparece un mensaje de error si hace clic en la instancia de Button del
escenario y no hay texto en el componente TextInput
firstName_ti. Este error aparece
en el componente Label e informa a los usuarios de que deben introducir un nombre.
92Principios básicos de la sintaxis y el lenguaje
El ejemplo siguiente en el que se utilizan llaves muestra cómo crear y definir propiedades
dentro de un objeto. En este ejemplo, las propiedades se definen en el objeto especificando los
nombres de las variables entre las llaves (
var myObject:Object = {id:"cst94121", firstName:"John", middleName:"H.",
lastName:"Doe"};
var i:String;
for (i in myObject) {
trace(i + ": " + myObject[i]);
}
/*
id: cst94121
firstName: John
middleName: H.
lastName: Doe
*/
{}):
También puede utilizar llaves vacías como métodos abreviados de sintaxis para la función new
Object()
var myObject:Object = {};
SUGERENCIA
. Por ejemplo, el código siguiente crea una instancia Object vacía:
Recuerde que debe asegurarse de que cada llave inicial cuente con su correspondiente
llave final.
Paréntesis
Al definir una función mediante ActionScript, los parámetros se colocan entre paréntesis [()],
como se muestra en las siguientes líneas de código:
function myFunction(myName:String, myAge:Number, happy:Boolean):Void {
// El código se escribe aquí.
}
Al llamar a una función, los parámetros que se desee pasar a ésta también se incluyen entre
paréntesis, como se muestra en el siguiente ejemplo:
myFunction("Carl", 78, true);
Puede utilizar paréntesis para modificar el orden de precedencia de ActionScript o para hacer
más legibles las sentencias de ActionScript. Esto significa que puede cambiar el orden en que
se calculan los valores escribiendo entre corchetes determinados valores, como se muestra en el
siguiente ejemplo:
var computedValue:Number = (circleClip._x + 20) * 0.8;
Signos de lenguaje93
Debido al orden de precedencia, si no ha utilizado paréntesis o utiliza dos sentencias
independientes, la multiplicación se calculará en primer lugar, lo que significa que la primera
operación será 20 * 0.8. El resultado, 16, se sumaría a continuación al valor actual de
circleClip._x y, finalmente, se asignaría a la variable
computedValue.
Si no utiliza paréntesis, deberá añadir una sentencia para evaluar la expresión, como se
muestra en el siguiente ejemplo:
var tempValue:Number = circleClip._x + 20;
var computedValue:Number = tempValue * 0.8;
Al igual que en el caso de los corchetes y las llaves, debe asegurarse de que cada paréntesis
inicial cuenta con su correspondiente paréntesis final.
Literales
Un literal es un valor que aparece directamente en el código. Los literales son valores
constantes (que no cambian) contenidos en los documentos de Flash. Ejemplos de literales
son
true, false, 0, 1, 52 o incluso la cadena “foo”.
Todos los ejemplos siguientes son literales:
17
"hello"
-3
9.4
null
undefined
true
false
Los literales también pueden agruparse para formar literales compuestos. Los literales de
matrices se escriben entre corchetes (
matriz. Un literal de matriz puede utilizarse para inicializar una matriz. En los siguientes
ejemplos se muestran dos matrices que se inicializan mediante literales de matriz. Puede
utilizar la sentencia
new y pasar el literal compuesto como parámetro al constructor de la clase
Array, pero no puede asignar valores literales directamente al crear instancias de clases
incorporadas en ActionScript.
// se utiliza una nueva sentencia
var myStrings:Array = new Array("alpha", "beta", "gamma");
var myNums:Array = new Array(1, 2, 3, 5, 8);
[]) y utilizan la coma (,) para separar los elementos de la
// asignar literal directamente
var myStrings:Array = ["alpha", "beta", "gamma"];
var myNums:Array = [1, 2, 3, 5, 8];
94Principios básicos de la sintaxis y el lenguaje
Los literales también pueden utilizarse para inicializar un objeto genérico. Un objeto genérico es
una instancia de la clase Object. Los literales de objetos se escriben entre llaves (
coma (
,) para separar las propiedades del objeto. Cada propiedad se declara mediante el signo de
dos puntos (
Puede crear un objeto genérico utilizando la sentencia
:), que separa el nombre de la propiedad del valor de la propiedad.
new y pasar el literal de objeto como
{}) y utilizan la
parámetro al constructor de la clase Object, o bien asignar el literal de objeto directamente a la
instancia que está declarando. En el siguiente ejemplo se crea un nuevo objeto genérico y se
inicializa el objeto con tres propiedades,
2 y 3 respectivamente.
// se utiliza una nueva sentencia
var myObject:Object = new Object({propA:1, propB:2, propC:3});
// asignar literal directamente
var myObject:Object = {propA:1, propB:2, propC:3};
propA, propB y propC establecidas con los valores 1,
No debe confundir un literal de cadena con un objeto String. En el siguiente ejemplo, la
primera línea de código crea el literal de cadena
código crea el objeto String
var firstStr:String = "foo"
var secondStr:String = new String("foo")
secondStr:
firstStr, mientras que la segunda línea de
Utilice literales de cadena a no ser que necesite utilizar un objeto String específicamente para
lograr un mejor rendimiento. Para más información sobre cadenas, consulte “Cadenas y la
clase String” en la página 480.
Comentarios
Los comentarios son una forma de realizar anotaciones en el código con descripciones en
lenguaje sencillo que el compilador no evalúa. Puede utilizar comentarios dentro del código
para describir qué hace el código o qué datos se devuelven al documento. La utilización de
comentarios puede ayudarle a recordar decisiones importantes de codificación y puede ser de
gran ayuda para otras personas que lean el código. Los comentarios deben explicar claramente
el propósito del código y no simplemente traducirlo. Si alguna parte del código no queda
suficientemente clara, debería añadir comentarios.
Es muy aconsejable añadir notas a los scripts utilizando comentarios. Los comentarios documentan
las decisiones que se toman con respecto al código y responden a las preguntas cómo y por qué.
Hacen que el código ActionScript resulte más comprensible. Por ejemplo, podría describir una
solución en los comentarios. De esta forma, usted u otro desarrollador podría localizar fácilmente
partes del código para resolver errores o llevar a cabo actualizaciones. O si el problema se resuelve o
se produce una mejora en una futura versión de Flash o Flash Player, podría mejorar el código
ActionScript eliminando la solución implementada.
Signos de lenguaje95
Evite utilizar comentarios saturados. Un ejemplo de comentario saturado sería el uso de una
línea de signos igual (=) o asteriscos (*) para crear un bloque de separación alrededor de los
comentarios. En lugar de eso, utilice un espacio en blanco para separar los comentarios del
código ActionScript. Si aplica formato al código ActionScript mediante el botón Formato
automático del panel Acciones o la ventana Script, se elimina el espacio en blanco. No olvide
volver a añadir espacio en blanco al código o utilizar líneas de comentario sencillas (
//) para
mantener el espaciado; estas líneas resultan más fáciles de eliminar después de aplicar formato
al código que determinar el lugar en el que previamente se encontraba el espacio en blanco.
Antes de desplegar el proyecto, elimine los comentarios superfluos del código, como “definir
las variables x e y” u otros comentarios que resulten obvios de manera inmediata para otros
desarrolladores. Si observa que hay demasiados comentarios sobrantes en el código
ActionScript, piense si necesita volver a escribir parte del código. Si necesita incluir muchos
comentarios sobre el funcionamiento del código, ello será indicativo de que el código
ActionScript no es ni elegante ni intuitivo.
Si activa la aplicación de color de sintaxis, los comentarios aparecen en gris de forma
predeterminada. Los comentarios pueden tener cualquier longitud sin que ello afecte al
tamaño del archivo exportado y no es necesario que sigan las reglas de las palabras clave y de la
sintaxis de ActionScript.
NOTA
El uso de comentarios es especialmente importante si se va a presentar el código
ActionScript a un público. Añada comentarios al código si está creando aplicaciones de
ejemplo para el aprendizaje de Flash o si está escribiendo artículos o tutoriales sobre
ActionScript.
Comentarios de una sola línea
Los comentarios de una sola línea permiten añadir al código un comentario que ocupe una
sola línea. Puede convertir en comentario una sola línea de código o añadir una breve
descripción de lo que se consigue mediante un fragmento de código determinado. Para indicar
que una línea o parte de una línea es un comentario, iníciela con dos barras inclinadas (//),
como se muestra en el siguiente código:
// Lo que sigue establece una variable local de edad.
var myAge:Number = 26;
Los comentarios de una sola línea suelen utilizarse para explicar un pequeño fragmento de
código. Puede utilizar comentarios de una sola línea para los comentarios breves que quepan
en una línea. El siguiente ejemplo contiene un comentario de una sola línea:
while (condition) {
// gestionar condición con sentencias
}
96Principios básicos de la sintaxis y el lenguaje
Comentarios de varias líneas
Utilice comentarios de varias líneas, también llamados comentarios en bloque, para crear
comentarios formados por más de una línea. Los desarrolladores utilizan habitualmente los
comentarios de varias líneas para describir archivos, estructuras de datos y métodos.
Normalmente se colocan al principio de un archivo y antes de un método o en él.
Para crear un bloque de comentario, coloque
al final del bloque de comentario. Esta técnica le permite crear comentarios largos sin añadir /
/ al comienzo de cada línea. La utilización de // para varias líneas consecutivas puede originar
problemas al modificar los comentarios.
El formato de un comentario de varias líneas es el siguiente.
/*
El siguiente código ActionScript inicializa variables que se utilizan en
sistemas de menú principal y submenús. Las variables se utilizan para
realizar un seguimiento de las opciones en las que se hace clic.
*/
SUGERENCIA
Si coloca los caracteres de comentario (/* y */) en líneas separadas al principio y al final
del comentario, puede anularlos fácilmente colocando dos barras diagonales (//) delante
de ellos (por ejemplo, ///* y //*/). De esta manera, puede añadir comentarios al código y
anularlos de forma rápida y sencilla.
Al colocar grandes trozos de script en un bloque de comentario, lo que se conoce como
convertir en comentario una parte del script, podrá comprobar determinadas partes de un
script. Por ejemplo, cuando se ejecute el siguiente script, no se ejecutará el código incluido en
el bloque de comentario:
// El siguiente código se ejecuta.
var x:Number = 15;
var y:Number = 20;
/* al principio de las líneas de comentario y */
// El siguiente código se convierte en un comentario y no se ejecuta.
/*
// crear un objeto Date nuevo
var myDate:Date = new Date();
var currentMonth:Number = myDate.getMonth();
// convertir número de mes en nombre de mes
var monthName:String = calcMonth(currentMonth);
var year:Number = myDate.getFullYear();
var currentDate:Number = myDate.getDate();
*/
// El código siguiente se ejecuta.
var namePrefix:String = "My name is";
var age:Number = 20;
Signos de lenguaje97
SUGERENCIA
Es recomendable colocar una línea en blanco delante de un comentario en bloque.
Comentarios finales
Los comentarios finales permiten añadir un comentario en la misma línea que el código.
Estos comentarios aparecen en la misma línea que el código ActionScript. Los desarrolladores
utilizan habitualmente los comentarios finales para indicar cuál es el contenido de una
variable o para describir o llamar la atención sobre el valor devuelto por una línea de código
ActionScript. Aplique formato a los comentarios finales de la siguiente forma:
var myAge:Number = 26; // variable de mi edad
trace(myAge); // 26
Inserte los comentarios a la derecha y con espacios para que los lectores puedan distinguirlos
del código. Si es posible, intente alinear los comentarios, tal y como se muestra en el código
siguiente.
var myAge:Number = 28; // mi edad
var myCountry:String = "Canada"; // mi país
var myCoffee:String = "Hortons"; // mi café preferido
Si utiliza el formato automático (haga clic en el botón Formato automático del panel
Acciones), los comentarios finales se desplazarán a la siguiente línea. Añada estos comentarios
después de aplicar formato al código pues, de lo contrario, deberá modificar su ubicación tras
utilizar el botón Formato automático.
Comentarios dentro de clases
Los comentarios dentro de las clases e interfaces permiten documentarlas con el fin de que los
desarrolladores comprendan el contenido de una clase. Puede empezar todos los archivos de
clase con un comentario que indique el nombre de clase, el número de versión, la fecha y el
copyright. Por ejemplo, podría crear para la clase una documentación similar al siguiente
comentario:
/**
Pelican class
version 1.2
10/10/2005
copyright Macromedia, Inc.
*/
98Principios básicos de la sintaxis y el lenguaje
Utilice los comentarios en bloque para describir archivos, estructuras de datos y métodos.
Normalmente se colocan al principio de un archivo y antes de un método o en él.
En un archivo de clase o interfaz típico hay dos tipos de comentarios: comentarios de
documentación y comentarios de implementación. Los comentarios de documentación se
utilizan para describir las especificaciones del código y no describen la implementación. Los
comentarios de documentación se utilizan para describir interfaces, clases, métodos y
constructores. Los comentarios de implementación se utilizan para marcar el código o para
comentar la implementación de determinadas secciones del código.
Incluya un solo comentario de documentación por cada clase, interfaz o miembro y colóquelo
inmediatamente antes de la declaración. Si debe proporcionar más información de la que cabe
en los comentarios de documentación, utilice los comentarios de implementación (con el
formato de comentarios en bloque o comentarios de una sola línea). Los comentarios de
implementación deben ir inmediatamente después de la declaración.
Los dos tipos de comentarios utilizan delimitadores ligeramente distintos. Los comentarios de
documentación se delimitan con
con
/* y */.
SUGERENCIA
No incluya comentarios que no estén directamente relacionados con la clase que se está
leyendo. Por ejemplo, no incluya comentarios que describan el paquete
correspondiente.
/** y */, y los comentarios de implementación se delimitan
También puede incluir comentarios de una sola línea, comentarios en bloque y comentarios
finales en los archivos de clases. Hallará más información acerca de estos tipos de comentarios
en las secciones siguientes:
■ “Comentarios de una sola línea” en la página 96
■ “Comentarios de varias líneas” en la página 97
■ “Comentarios finales” en la página 98
Signos de lenguaje99
Constantes y palabras clave
Las constantes y las palabras clave constituyen la base de la sintaxis de ActionScript. Las
constantes son propiedades con un valor fijo que no puede alterarse, por lo que son valores
que no cambian en ninguna parte de una aplicación.
Flash incluye diversas constantes predefinidas que contribuyen a simplificar el desarrollo de
aplicaciones. Un ejemplo de constantes lo podemos encontrar en la clase Key, que incluye
numerosas propiedades, como
tendrá que recordar nunca que los valores de código de las teclas Intro y AvPág son 13 y 34. La
utilización de valores constantes no hace que el desarrollo o la depuración resulten más
sencillos, pero sí permite a otros desarrolladores leer el código con mayor facilidad.
Las palabras clave de ActionScript se utilizan para realizar tipos de acciones específicos.
También son palabras reservadas por este motivo, de modo que no se pueden utilizar como
identificadores (por ejemplo, nombres de variables, de funciones o de etiquetas). Ejemplos de
palabras reservadas son:
Para más información sobre constantes y palabras clave, consulte los siguientes temas:
■ “Utilización de constantes” en la página 100
■ “Palabras clave” en la página 103
■ “Palabras reservadas” en la página 104
Para más información sobre objetos y propiedades, consulte “Tipo de datos Object (objeto)”
en la página 335. Para obtener una lista de constantes del lenguaje (por ejemplo,
NaN), consulte la categoría Constantes >de Elementos del lenguaje ActionScript en Referencia
del lenguaje ActionScript 2.0.
Key.ENTER o Key.PGDN. Si basa su trabajo en constantes, no
if, else, this, function y return.
false y
Utilización de constantes
Las constantes son propiedades con un valor fijo que no puede alterarse; dicho de otro modo,
son valores que no cambian en ninguna parte de una aplicación. El lenguaje ActionScript
contiene numerosas constantes predefinidas. Por ejemplo, las constantes
SPACE y TAB son propiedades de la clase Key y se refieren a las teclas del teclado. La constante
Key.TAB siempre tiene el mismo significado: indica la tecla Tabulador de un teclado. Las
constantes resultan útiles para comparar valores y utilizar en la aplicación valores que no
cambian.
100Principios básicos de la sintaxis y el lenguaje
BACKSPACE, ENTER,
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.