Comunidad de diseño web y desarrollo en internet online

actionscript3 sin flash

Citar            
MensajeEscrito el 21 Feb 2009 04:17 pm
Hola gente soy nuevo en el foro y cai por aca buscando algun tipo de tutorial para aprender actionscript 3 pero sin flash, o sea solo con el sdk y el flashdevelop. Por ahora me las estoy rebuscando con la documentación de clases de adobe y mis conocimientos de java. Pero me gustaria entender bien como crear una interfaz de uduario por codigo. Y si alguien me puede aclarar una duda existencial que tengo. Flash develop me arma la clase Main.as de la siguiente manera:

Código :

package 
{
   import flash.display.Sprite;
   import flash.events.Event;
    import flash.text.*;
   /**
    * ...
    * @author ...
    */
   public class Main extends Sprite 
   {
      
      public function Main():void 
      {
         if (stage) init();
         else addEventListener(Event.ADDED_TO_STAGE, init);
      }
      
      private function init(e:Event = null):void 
      {
         removeEventListener(Event.ADDED_TO_STAGE, init);
         
      }
      
   }
   
}


Que de todo esto es necesario y que hacen las funciones init() y Main(). Desde ya muchas gracias.

Por study

8 de clabLevel



 

opera
Citar            
MensajeEscrito el 21 Feb 2009 07:10 pm
Bien, la función Main es la clase que se usa para correr el programa del mismo nombre, esta correrá automáticamente una vez que tu Main.as esté cargado.

Init es la función que te avisa cuando todo esta cargado y listo para correr, es la función de inicialización. Ahí es un buen punto para empezar a correr el resto de tus funciones públicas.

Por gente21

79 de clabLevel



 

chrome
Citar            
MensajeEscrito el 23 Feb 2009 06:20 pm
La función Main se llama así, porque la clase tiene ese nombre (la línea 'public class Main extends Sprite') y por lo tanto, el archivos que contiene este código también debe llamarse así. Si quieres otro nombre, debe coincidir las tres veces aún las mayúsculas y minúsculas.

Luego, la función Main es el punto de inicio de la clase. La primer función que corre. ¿por qué la función init? para evitar errores.
Flash Player crea la instancia de la clase, corre el constructor y después agrega la instancia a la lista de visualización (la agrega al Stage)
Hay funciones y acciones (asignar Variables, etc.) que pueden ir en el constructor (nuestra función Main). Pero algunas otras solo funcionan después de que la clase ha sido añadida a la lista de visualización y aparece en el escenario.
si te fijas, la función init no corre inmediatamente, sino que se evalúa si la clase está ya en el escenario, si no, agrega un listener para cuando esté agregado al escenario (ADDED_TO_STAGE). La primer línea de init quita ese listener para que no vuelva a correr

El código que pones es lo mínimo para correr una película en Flash. Realmente no hay líneas de más.
primero están las clases a importar, luego inicia la clase, que debe extender de Sprite o MovieClip para que funcione y luego las funciones, empezando por el constructor.

Como nota, un detalle que encontré: la definición del constructor la tienes así:
public function Main ():void {}
si acaso te diera error, prueba así:
public function Main () {}
yo sabía que el constructor no tiene un valor de retorno, de ahí que no le ponga el ':void'

pues suerte y ahi nos cuentas tus aventuras

Por leoncitoamx

Claber

206 de clabLevel

2 tutoriales

 

Puebla, México

firefox
Citar            
MensajeEscrito el 24 Feb 2009 02:08 am
Gracias por las respuestas. Por lo que vi todo muy parecido a java. El tema es que tambien me gustaria aprender a construir una interfaz de usuario directamente por codigo y no consigo ni un miserable tutorial para eso. Yo estoy queriendo empezar un proyecto de un juego online de estrategia en tiempo real masivo. Para el lado del server pensaba usar php, para la base de datos mysql, como nexo cliente/servidor xml y del lado del cliente actiónscript 3 ya que las applets java son muy pesadas. Pero al paso que voy me parece que voy a tener que sacrificar rendimiento en post de un lenguage con mas soporte. Ya que todo lo que encuentro sobre as3 inplica el uso de flash. Igual muchas gracias.

Por study

8 de clabLevel



 

opera
Citar            
MensajeEscrito el 25 Feb 2009 03:51 am
Hola

Podes usa el SDK de Flex, con el pendras muchas mas opciones.... El flash develop tengo entendido q lo soporta.

POr otro lado, ¿no conseguis un tutorial de creacion de interfaces por codigo?

Mmm

Es q no los hay, simplemente tendras q usar:

Si usas sdk de flash:
- Loader para cargar imagentes, xml de configuracion de la interfaz
- los Sprite y Shapes para manipular las figuras q cargas
- El API de dibujo de AS3
- los twins de flash para animar (principalmente animateproperty).
- Movieclips para animaciones.

Si usas el sdk de flex (q es gratuito):
- todo lo anterior
- Una gerarquia muuuuucho mas amplia de componentes visuales con layouts predefinidos (q extienden todos de sprite) (hbox, vbox, canvas, tile, etc)
- completa manipulacion de la interfaz por css
- Uso de las librerias de degrafa para la generacion de interfaces
- En flex 4, completo manejo de la interfaz, estados, eventos, etc por un api especial

Para el sdk de flex si hay muchos manuales de generacion de interfaces por codigo as (y mxml)


Espero q te sirva la ayuda

Saludos!
PD: Si estas por hacer un juego de estrategia, talvez te convenga buscar sobre frameworks en AS3 de motores de juegos isometricos (supongo q van a hacer un jeugo de estrategia tipo starcraft o similar no?), hay unos cuantos y muy buenos, cualquier cosa por ahi tengo algun link...

Por alfathenus

833 de clabLevel

5 tutoriales

 

buenos aires || Argentina

firefox
Citar            
MensajeEscrito el 27 Feb 2009 02:16 am
voy a probar lo que me contas, y si me sale bien voy a subir algun tutorial a la web para que al que venga atras mio no le pase lo mismo. Tomo nota para lo del framewordk.

Por study

8 de clabLevel



 

opera

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.