Botones en AS3

Al programar en actionscript 3 hay que tener en cuenta que que las instancias de moviclip y botones no se les podrá agregar acciones mediante los métodos onPress() u  onRelease() . Estos métodos dejaron de existir y pasaron a convertirse en eventos que deben ser manipulados mediante listeners.

Mediante este pequeño ejemplo veremos como incorporar una acción de un botón:

Primero se añade un nuevo botón en el escenario, existen varias formas para esto:

  • Dibujar una figura en el escenario y transformarlo a un símbolo de tipo botón.
  • Desde el menú insertar, escoger nuevo símbolo, seleccionar botón, automáticamente se abre el editor de símbolos y se procede a crear el botón.
  • Insertar un botón de las bibliotecas comunes.

entre otros, si desean otras formas para hacer esto pueden verlo en el tutorial integrado en la ayuda de flash.

como segundo paso, nombre la instancia del botón que está presente en el escenario, para el ejemplo usamos la palabra boton (las etiquetas en flash no usan tildes, ni eñes, ni espacios, de hceho están reguladas por las mismas normas para el nombrado de las variables, para mas información mira la documentación de flash)

TIP

El autocompletar de flash puede interpretar el tipo de variable a manejar de acuerdo a las primeras letras del nombre de variable, por eso se recomienda usar los prefijos bot_ para las instancias de botones y mc_ para las instancias de movie clips.

Tu escenario debe parecerse a lo que se muestra en la imagen:

como tercer punto, abre el panel de acciones en el keyframe donde está tu botón (luego se explicará algo de buenas prácticas de localización de código) y añade el código a continuación:

/*se adiciona un listener de eventos que sera disparado cada vez que se hace click en el boton*/

boton.addEventListener(MouseEvent.CLICK,mostrar);

/*

funcion mostrar: muestra en consola un texto cada vez que ocurre un evento del mouse

parametros: event, es un MouseEvent;

para mas informacion sobre MouseEvent ver:

Sitio

retorna: nada


*/

function mostrar(event:MouseEvent){

trace(”Presionar”);

}

//fin de programa

Ahora prueba tu película y cada vez que presiones el botón que creaste debe aparecer un mensaje en la consola.

4 Responses to “Botones en AS3”

  1. 1
    Nada:

    No sirve. Es frustrante el cambio en CS3 y CS4. No está claro.

  2. 2
    Zean DEsign:

    No pueden ser mas claros Nada..

  3. 3
    wil:

    hola .
    si tratamos de correr el ejemplo nos dice donde esta el error
    (error 1093 error de sintaxis, ORIGEN trace(presionar) ),

    explicacion: el error esta en las comillas del trace….

    nota: cuando queramos imprimir en la consola , la cadena o String q pasamos debe estar entre comillas dobles o simples. pero siempre tiene q qedar de color “verde” lo q esta entre las comillas.

    /*se adiciona un listener de eventos que sera disparado cada vez que se hace click en el boton*/

    boton.addEventListener(MouseEvent.CLICK,mostrar);

    /*

    funcion mostrar: muestra en consola un texto cada vez que ocurre un evento del mouse

    parametros: event, es un MouseEvent;

    para mas informacion sobre MouseEvent ver:

    Sitio

    retorna: nada

    */

    function mostrar(event:MouseEvent){

    trace(”Presionar”);

    }

    //fin de programa

  4. 4
    wil:

    .
    .
    .
    jeje ,aqui en la pag hay algo q cambia las comillas ….cuando bajen el ejemplo CAMBIENLAS manualmente.

    saludos

Leave a Reply