2010-02-14 7 views
0

Lorsque je débogue mon code, rien n'apparaît à l'écran. J'ai revérifié le code et consulté les autres mais rien n'apparaît. Mon modèle html est très bien.Pourquoi l'objet graphique du Sprite ne dessine pas à l'écran?

package { 
    import flash.display.Sprite; 
    import flash.events.*; 


    public class asgnv2 extends Sprite 
    { 
     var lineY = 0; 
     public function asgnv2() 
     { 
      stage.addEventListener(Event.ENTER_FRAME, update); 
      graphics.lineStyle(1); 
     } 
     function update(e){ 
      graphics.clear(); 
      graphics.moveTo(0 ,lineY); 
      graphics.lineTo(100, lineY); 
      lineY+=0.5; 

      } 

     } 
    } 
+0

Comment faites-vous référence asgnv2? En d'autres termes, comment utilisez-vous asgnv2 pour qu'il apparaisse sur la scène? –

Répondre

1

moins asgnv2 est classe document, il ne va pas travailler, comme vous enregistrez événement ENTER_FRAME sur la scène à l'intérieur du constructeur de asgnv2. Un objet DisplayObject ne peut pas accéder à la propriété de scène tant qu'il n'est pas ajouté à la liste d'affichage des étapes. Alors essayez ce qui suit.

public function asgnv2(){ 
    this.addEventListener(Event.ADDED_TO_STAGE, onAdded); 
    graphics.lineStyle(1); 
}

private function onAdded(e:Event):void { stage.addEventListener(Event.ENTER_FRAME, update); this.removeEventListener(Event.ADDED_TO_STAGE, onAdded); } private function update(e:Event):void{ //do the stuff }

Questions connexes