Como programar botones en ActionScript 3.0

Actualización: Hemos realizado un video-tutorial sobre éste tema el cual está mucho mejor explicado. Lo puedes ver en éste link: http://xper.co/n2PeSl

Antes de iniciar: si eres un experto programador de ActionScript 3.0 no quiero decepcionarte, este es un tutorial extremadamente básico así­ que léelo bajo tu riesgo…

Ya habí­amos hablado de la conveniencia de aprender ActionScript para agregar interactividad a las presentaciones hechas en Flash por lo cual estás dispuesto a repasar con el Flash que te conseguiste (no quiero saber como) lo que viste en la universidad o en el curso del año pasado y empiezas con lo más sencillo: crear un botón.

  1. Creas una figura y la conviertes a botón (vamos avanzado)
  2. Abres el panel Actions y Upssss, te encuentras con este texto: “Current selection cannot have actions applied to it” o sea: Sorry men, es hora de aprender ActionScript 3.0, bienvenido al futuro!

Como habí­amos explicado en un post anterior, Flash CS3 incorporó el soporte para AS3 aunque sigue ofreciendo la oportunidad de trabajar en AS2 aún en la versión CS4. Veamos la diferencia en las dos versiones creando un botón que muestre un mensaje al presionarlo:

Quieres seguir trabajando en AS2? La verdad no deberí­as pero estos son los pasos para la creación del botón:

  1. Abre Adobe Flash y en la ventana de inicio (Start Page) o en la ventana resultante del comando File/new… seleccionas “Flash File (ActionScript 2.0)”
  2. Creas una figura y la conviertes en botón.
  3. Seleccionas el botón y en el panel Actions escribes:
    on (release) {
    trace(”Usted presiono un boton”);}
  4. Presiona Control/Comando + <Enter> para crear el .swf y al hacer click en el botón verás el mensaje “Usted presiono un boton” en el panel output.

Quieres empezar a trabajar en AS3? Esa es la actitud! entonces estos son los pasos para la creación del mismo botón:

  1. Abre Adobe Flash (CS3 o posterior) y en la ventana de inicio (Start Page) o en la ventana resultante del comando File/new… seleccionas “Flash File (ActionScript 3.0)”
  2. Creas una figura y la conviertes en botón.
  3. Al seleccionar el botón y abrir el panel Actions verás el mensaje “Current selection cannot have actions applied to it”. Esto se debe a que AS3.0 no permite “pegar” acciones a objetos por lo cual debemos manejarlas desde la lí­nea de tiempo, así­ que la primera tarea diferente que realizaremos será seleccionar el botón y darle como nombre de instancia “boton” en el panel de propiedades.
  4. Creamos una nueva capa y haciendo click en el primer (y único) frame de esta capa abrimos el panel Actions y escribimos:
    boton.addEventListener(MouseEvent.MOUSE_UP, mensaje);
    function mensaje(evento:MouseEvent):void {
    trace(”Usted presiono un boton”);}
  5. Presiona Control/Comando + <Enter> para crear el .swf y al hacer click en el botón verás el mensaje “Usted presiono un boton” en el panel output.

Qué fué lo que escribimos en AS3? Primera lí­nea: “pegado” al botón se crea un Listener que nos avisará cuando el usuario haga click (MOUSE_UP), cuando esto pase llamará la función “mensaje”. Segunda lí­nea: Se declara la función “mensaje” que recibe como parámetro el evento de tipo MouseEvent y finalmente en la lí­nea 3: mostramos el texto “Usted presiono un boton”.

¿Dudas y preguntas? Visita nuestros foros Xpert y mira a documentación listada en este post.

Necesitas capacitación o cursos de Flash CS4 o ActionScript? Mira la oferta de entrenamiento certificado Adobe.

7 thoughts on “Como programar botones en ActionScript 3.0

  1. September 24, 2008

    andrea Reply

    no me funciona estoy tratando de programar un boton en cs3 para que me valla a una segunda pagina o sea a un segundo frame como seria el codigo esacto?

  2. September 24, 2008

    admin Reply

    Andrea, por favor publica tus pregunta en los foros para que pueda recibir respuesta: http://www.xpert.com.co/foros/

  3. October 2, 2008

    Ruben Reply

    Yo he utilizado el this, es decir, this.boton.add….

  4. June 11, 2009

    Alojado en Reply

    Muchisimas por la información, me ha sido muy útil para un proyecto que estoy desarrolando para una empresa importante.

  5. June 18, 2009

    Juan Reply

    Disculpen a euine me pueda ayudar estoy programando en flash 8 y necesito que al dar clic en el boton, el mismo me envie a una pagina, pero esta pagina se debe cargar en un iframe si alguien sabe por favor agradeceria mucho la respuesta

  6. April 1, 2016

    LUJAN Reply

    BUEN DÍA. tengo esto action en flash para enlazar paginas dentro de una misma web.

    ahora estoy migrando a animate cc y no funciona.

    parroco.addEventListener(MouseEvent.CLICK, iraparroco);
    function iraparroco (event:MouseEvent): void {
    navigateToURL ( new URLRequest (“parroco.php”),”_self”);
    }

    • April 1, 2016

      Marlon Ceballos Reply

      El código está bien, si cambias el nombre del archivo php por una url te debe funcionar por lo cual el problema debe ser con el acceso a ese archivo o con el archivo en si.

Leave a Reply

Your email address will not be published. Required fields are marked *