Comunidad de diseño web y desarrollo en internet online

Primerizo en clases

Citar            
MensajeEscrito el 23 May 2011 02:20 pm
Saludos. Practicando con clases me trave en esto, que parece tan sencillo.

Flash.

Código ActionScript :

import flash.display.*;
import clases.aleaCirculo;

var Circle:aleaCirculo = new aleaCirculo();
Circle.creaCirculo();


en mi clase

Código ActionScript :

package  clases {
   import flash.display.*;
   
   public var myCircle:circulo = new circulo;
   public class aleaCirculo {

      public function aleaCirculo() {
         // constructor code
         
      }
      public function creaCirculo():void{
         public var myCircle:circulo = new circulo;
         addChild(myCircle);
      }

   }
   
}


osea lo que tengo en mi flash es un clip linkeado con el nombre "circulo" y quiero crear usando addchild uno en la pelicula. si lo hago directamente en el flash funciona, pero usando clases no me cuadra...

Por LordGraphic3

84 de clabLevel



Genero:Masculino  

desde?

firefox
Citar            
MensajeEscrito el 23 May 2011 02:25 pm
Para que una clase pueda hacer un addChild, tiene que estar en el DisplayList, para estar en el displayList>

- la has arrastrado desde la librería al escenario
- alguien la ha agregado (desde el timeline con addChild, o el Document class si lo usas)

Si displaylist no te suena, búscalo en la ayuda, es fundamental para entender la jerarquíe de las clases visuales

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 23 May 2011 02:36 pm
lo tengo en la librería con
Name: myCircle y Linkage: circulo

cuando uso esto en el flash funciona

Código ActionScript :

lo tengo en la librería con 
Name: myCircle y Linkage: circulo

cuando uso esto en el flash funciona


pero usando una clase me lanza el error 1180 en la linea 12

Por LordGraphic3

84 de clabLevel



Genero:Masculino  

desde?

firefox
Citar            
MensajeEscrito el 23 May 2011 02:41 pm

Código ActionScript :

var myCircle:circulo = new circulo;
addChild(myCircle);


este era el codigo en el flash que si funciona.... antes me equivoke en pegar la informacion

Por LordGraphic3

84 de clabLevel



Genero:Masculino  

desde?

firefox
Citar            
MensajeEscrito el 23 May 2011 02:57 pm
Si, ya me lo comentaste, relee mi respuesta, si no entiendes pregunta

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 23 May 2011 03:01 pm
- la has arrastrado desde la librería al escenario
no... mi escenario esta en blanco

- alguien la ha agregado (desde el timeline con addChild, o el Document class si lo usas)
no... el codigo que puse es todo lo que hay.

si tiene que estar en el display list... como lo agrego a la lista?

Por LordGraphic3

84 de clabLevel



Genero:Masculino  

desde?

firefox
Citar            
MensajeEscrito el 23 May 2011 03:06 pm
Haciendo alguna de las dos cosas que puse. Cuando dices: "si lo hago directamente en el flash funciona", estás haciendo lo segundo. Puedes crear un Document Class para manejar tu pelicula y hacerlo desde allí si no quieres poner código en el timeline

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 23 May 2011 03:14 pm
Flash:

Código ActionScript :

import flash.display.*;
import clases.aleaCirculo;
var myCircle:circulo = new circulo;
myCircle.x = 100;
addChild(myCircle);

var Circle:aleaCirculo = new aleaCirculo();
Circle.creaCirculo();


Clase

Código ActionScript :

package  clases {
   import flash.display.*;
   
   public class aleaCirculo {

      public function aleaCirculo() {
         // constructor code
         
      }
      public function creaCirculo():void{
         var C:circulo = new circulo();
         C.y = 50;
         addChild(C);
         myCircle.y = 100
         addChild(myCircle);
         trace("rayos");
      }

   }
   
}


Pues primero cree un Child en flash que si se mostrava en x = 100; con esto debería estar en el Displaylist.

pero la clase sigue sin agregar los childs que quiero, y puse dos posibilidades y ninguna..
me lanza los mismos errores : Call to a possible undefined method addchild.
y ahora 1120:Access of undefined property myCircle.

Esto debería ser la cosa mas sencilla del mundo...

Por LordGraphic3

84 de clabLevel



Genero:Masculino  

desde?

firefox
Citar            
MensajeEscrito el 23 May 2011 03:24 pm

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 23 May 2011 03:35 pm
ya agregé el
addChld(Circle); y sigue igual

Por LordGraphic3

84 de clabLevel



Genero:Masculino  

desde?

firefox
Citar            
MensajeEscrito el 23 May 2011 03:44 pm
Circulo tiene un addChild, aleaCirculo tiene un addChild, el main tiene un addChild, la sucesión incorrecta de esas acciones genera los errores. Así funciona el DisplayList.

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 23 May 2011 03:50 pm
No se tu... pero buscando no di con una respuesta directa.. pero vi que varios usaban esto en sus classes

"public class miClase extends Sprite { "

esa cosa del extends Sprite no entiendo bien. pero con sólo poner eso funcionó. le quito y tengo el problema de antes...

Por LordGraphic3

84 de clabLevel



Genero:Masculino  

desde?

firefox
Citar            
MensajeEscrito el 23 May 2011 03:51 pm
lo de addChild(Circle); si tenias mucha razón y se me pasó.

Por LordGraphic3

84 de clabLevel



Genero:Masculino  

desde?

firefox
Citar            
MensajeEscrito el 23 May 2011 03:55 pm
Cierto, extends MovieClip o Sprite según necesites, usualmente cuando marcas para exportar una MC en la librería y lo asocias a una clase, te lo agrega automáticamente en el cuadro de diálogo

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.