Foros del Web » Creando para Internet » Flash y Actionscript »

Las Clases de AS2... duda de funcionamiento

Estas en el tema de Las Clases de AS2... duda de funcionamiento en el foro de Flash y Actionscript en Foros del Web. Estoy experimentando con las Clases y tengo una duda conceptual. ¿Se pueden poner eventos dentro del Constructor de una Clase? Ej: Código: class Tipos { ...
  #1 (permalink)  
Antiguo 18/04/2005, 04:28
 
Fecha de Ingreso: febrero-2004
Ubicación: Carthagena
Mensajes: 205
Antigüedad: 20 años, 2 meses
Puntos: 0
Las Clases de AS2... duda de funcionamiento

Estoy experimentando con las Clases y tengo una duda conceptual.
¿Se pueden poner eventos dentro del Constructor de una Clase?

Ej:
Código:
class Tipos {
	//	
	public var id = new Array();
	public var nombre = new Array();
	//
	function Tipos(_path:String) {
		var dat = new LoadVars();
		var direccion = _path + "tipos.php";
		dat.load(direccion);
		//
		dat.onLoad = function(ok) {
...
..
.
Se cargan los datos con un objeto Load, y al terminar va a la funcion onLoad, el problema es que no puedo acceder a los datos 'public' id y nombre desde dentro de la function dat.onLoad...

¿Es algun error mio o es algo que no se puede hacer desde las Clases?
  #2 (permalink)  
Antiguo 18/04/2005, 07:43
Avatar de Prince  
Fecha de Ingreso: mayo-2003
Ubicación: DF
Mensajes: 574
Antigüedad: 20 años, 11 meses
Puntos: 1
No, no se pueden. De hecho no los deberías necesitar, ya que los eventos se tienen que poner aparte.
__________________
- P R I N C E -
  #3 (permalink)  
Antiguo 18/04/2005, 08:42
 
Fecha de Ingreso: febrero-2004
Ubicación: Carthagena
Mensajes: 205
Antigüedad: 20 años, 2 meses
Puntos: 0
Gracias por responder.
Tengo varios baches con esto de las Clases. ¿Cómo sería el procedimiento?
Yo lo había pensado así:
Código:
-Archivo Tipo.as-
Class Tipo
   definicion var...
   constructor Tipo:cargo los datos desde un php usando .load y onLoad
   funciones varias
Fin de Class

-Archivo Fla-
var tabla_tipos:Tipos = new Tipos("http://www....");
Entonces al crear el Objeto "tabla_tipos" automaticamente se cargan los datos.

¿Cómo se podría resolver este proceso?
  #4 (permalink)  
Antiguo 18/04/2005, 14:20
Avatar de Prince  
Fecha de Ingreso: mayo-2003
Ubicación: DF
Mensajes: 574
Antigüedad: 20 años, 11 meses
Puntos: 1
No, no, no. Lo que puedes hacer dentro del constructor es llamar al método pasándole los parámetros necesarios. Pero no puedes definir el método dentro del contructor.
Por ejemplo...
Código:
class Tipo{

  function Tipo():Void{
    metodo(parametro);
  }
 
  private function metodo(parametro:String):Void{
    ...
    ...
    ...
  }
}
__________________
- P R I N C E -
  #5 (permalink)  
Antiguo 18/04/2005, 16:00
Avatar de TMeister
Crazy Coder
 
Fecha de Ingreso: enero-2002
Ubicación: En la Oficina
Mensajes: 2.880
Antigüedad: 22 años, 3 meses
Puntos: 193
Si se puede... Pero necesitas crear una variable de "escape" antes de craer tu instancia del loadVars algo asi.

Código PHP:
class LoadInfo
{
    var 
info1 String;
    var 
info2 String;
    function 
LoadInfo ($url String)
    {
        
//Variable de escape.
        
var scope this
        
var lv LoadVars = new LoadVars ();
        
lv.load ($url);
        
lv.onLoad = function ()
        {
            
trace ("recibo " this.var1);
            
trace ("recibo " this.var2);
            
//Asigno
            
scope.info1 this.var1;
            
scope.info2 this.var2;
            
//imprimo
            
trace ("acceso " scope.info1);
            
trace ("acceso " scope.info2);
        }
    }

y en el FLA
Código:
var carga:LoadInfo = new LoadInfo("http://tu.php")
y listo. ahora puedes acceder a tus variables de la Clase desde un metodo como el LoadVars, XML, XMLSocket etc etc

Saludos!!
  #6 (permalink)  
Antiguo 18/04/2005, 16:20
 
Fecha de Ingreso: febrero-2004
Ubicación: Carthagena
Mensajes: 205
Antigüedad: 20 años, 2 meses
Puntos: 0
Huy! bárbaro... ahora lo pruebo a ver qué tal me va :)
  #7 (permalink)  
Antiguo 18/04/2005, 16:40
 
Fecha de Ingreso: febrero-2004
Ubicación: Carthagena
Mensajes: 205
Antigüedad: 20 años, 2 meses
Puntos: 0
Lo he probado y funciona perfecto!. Muchas gracias. Es mucho más de lo que me esperaba. :)
  #8 (permalink)  
Antiguo 20/04/2005, 02:04
 
Fecha de Ingreso: febrero-2004
Ubicación: Carthagena
Mensajes: 205
Antigüedad: 20 años, 2 meses
Puntos: 0
TMeister, cuando declaras ($url : String) , ¿qué significa el signo $ ?
  #9 (permalink)  
Antiguo 20/04/2005, 10:23
Avatar de TMeister
Crazy Coder
 
Fecha de Ingreso: enero-2002
Ubicación: En la Oficina
Mensajes: 2.880
Antigüedad: 22 años, 3 meses
Puntos: 193
Nada... es el nombre de la variable pero a veces se me olvida que no estoy en PHP y declaro las variables asi.. Pero en realidad solo es el nombre de la variable.
  #10 (permalink)  
Antiguo 24/05/2005, 03:16
 
Fecha de Ingreso: noviembre-2004
Ubicación: ELche
Mensajes: 153
Antigüedad: 19 años, 4 meses
Puntos: 0
Perdonar tengo una duda con el post que haceis sobre clases.

Este codigo de la clase se define en un *.as? , porque si hago eso y después coloco el #include "Load.as", me da un error este

**Error** Scene=Scene 1, layer=Layer 1, frame=1:Line 2: Classes may only be defined in external ActionScript 2.0 class scripts.

no se porque, ni que estoy haciendo mal, no se si estoy referenciando mal el archivo.

Bueno espero que podais ayudarme

Un saludo
  #11 (permalink)  
Antiguo 24/05/2005, 15:16
Avatar de Prince  
Fecha de Ingreso: mayo-2003
Ubicación: DF
Mensajes: 574
Antigüedad: 20 años, 11 meses
Puntos: 1
Lo que pasa es que para usar las clases dentro del AS en Flash no tienes que usar la palabra #include, tienes que usar "import" seguido del nombre de la clase (sin extensión), entre comillas.
Código:
import "Load"
__________________
- P R I N C E -
  #12 (permalink)  
Antiguo 24/05/2005, 18:39
Avatar de junihh  
Fecha de Ingreso: febrero-2004
Ubicación: República Dominicana
Mensajes: 997
Antigüedad: 20 años, 2 meses
Puntos: 7
Hola señores

Este tema de las clases me interesa. Quiero desarrollarme mas en AS, pero no soy programador. Conocen alguna direccion (ademas de Macromedia) donde den mas detalles sobre la construccion de clases y el manejo de los parametros de estas ???
__________________
JuniHH
- Mi blog
- Mi portafolio
  #13 (permalink)  
Antiguo 24/05/2005, 18:50
Avatar de goc00  
Fecha de Ingreso: enero-2002
Ubicación: 000's DiMensiOn
Mensajes: 979
Antigüedad: 22 años, 3 meses
Puntos: 3
Eso es propio de la programación orientado a objetos (POO), AS 2.0 ahora implementa POO de forma "real". Busca en google sobre el tema por "POO y Flash" o también podría ser "Flash y clases"
__________________
GOC00 CominG soOn v2.0
CyA! & GooD LuCK...
  #14 (permalink)  
Antiguo 24/05/2005, 19:02
Avatar de junihh  
Fecha de Ingreso: febrero-2004
Ubicación: República Dominicana
Mensajes: 997
Antigüedad: 20 años, 2 meses
Puntos: 7
Tienes razon... debi comenzar por ese lado... gracias.
__________________
JuniHH
- Mi blog
- Mi portafolio
  #15 (permalink)  
Antiguo 25/05/2005, 21:28
Avatar de webgeri  
Fecha de Ingreso: marzo-2005
Ubicación: montevideo
Mensajes: 374
Antigüedad: 19 años, 1 mes
Puntos: 0
aka hay algunas cosas de AS 2.0

http://www.x-flash.org/as/docs/clases_2.htm
http://www.kirupa.com/developer/oop2/AS2OOPindex.htm
http://moock.org/eas2/

sldos
__________________
...
.....todos somos muy ignorantes
...lo que ocurre es que
......no todos ignoramos las mismas cosas
:-D
...

:: jack experimentos ::
:: jack fotografias ::
:: jack fotografias 2 ::
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:37.