Comunidad de diseño web y desarrollo en internet online

Ayuda con la construcción de una clase

Citar            
MensajeEscrito el 29 Jul 2009 02:44 pm
Hola a todos

estoy realizando una clase para manipular botones
nada del otro mundo.. mi problema radica en lo siguiente

mi idea es hacer una clase general para botones para pasarle todos los eventos necesarios pero la acción del boton
quiero pasarla por una funcion.

ejemplo

mi clase BTN

Código ActionScript :

package {
   import flash.display.MovieClip;
   import flash.events.MouseEvent;
   import flash.display.SimpleButton;
   import flash.text.TextField;
   import flash.text.TextFieldAutoSize;
   import flash.text.TextFormat;

   public class btn extends MovieClip {
      private var labelText:String="btn";
                private var accion:Function
      function btn() {
         buttonMode = true;
         nombre(labelText);
         this.addEventListener(MouseEvent.MOUSE_DOWN,on_down);
      }

      public function nombre(nombre:String) {
         etiqueta.text=nombre;
      }
      public function set_accion(f:Function) {
         accion=f;
      }

      private function on_down(e:Event):void {
                         accion()
      }
   }
}

al construir el objeto

Código ActionScript :

import btn

function prueba(url:String) {
   trace(url);
}
var btn1:btn= new btn ();
btn.set_accion(prueba("google"));
btn1.nombre("Boton1");
this.addChild(btn1);


la verdad no se si todo esta bien escrito pero la idea es poder definir una funcion al momento de intanciar el objeto

si alguien ha hecho algo similar me puede ayudar?

Por Kalakfactory

38 de clabLevel



 

firefox
Citar            
MensajeEscrito el 29 Jul 2009 04:58 pm
La función ya está definida por el modelo de eventos, y es MouseEvent.CLICK (que tu clase hereda de MovieClip), entonces si tu clase tuviera una propiedad pública llamada uri, sería:

Código ActionScript :

function prueba(evt:MouseEvent):void{
    trace(btn(evt.target).uri)
}
btn.uri = "google"
btn.addEventListener(MouseEvent.CLICK, prueba)


Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 29 Jul 2009 05:35 pm
como se hace una propiedad publica?

Por Kalakfactory

38 de clabLevel



 

firefox
Citar            
MensajeEscrito el 29 Jul 2009 05:36 pm
Agrega:

public var uri:String


Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox

 

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