Sélection rectangle AS3

Signaler
Messages postés
5
Date d'inscription
lundi 4 mai 2009
Statut
Membre
Dernière intervention
27 mai 2009
-
Messages postés
5
Date d'inscription
lundi 4 mai 2009
Statut
Membre
Dernière intervention
27 mai 2009
-
Bonjour
je programme depuis peu et j'ai voulu adapter en AS3 le code AS2 du rectangle de sélection d'[auteur/APOKALYPSE/393951.aspx apokalypse.]
Mon problème est que l'angle en haut à gauche de mon rectangle est toujours en 0.0 (et non à l'endroit où je clique).
Voici mon code :

public class test extends MovieClip
    {
        public var clip:MovieClip ;
        public var etat:Boolean = false ;       
       
        public function test()
        {
            clip = new MovieClip () ;
               
            stage.addEventListener(MouseEvent.MOUSE_DOWN, down);
            stage.addEventListener(MouseEvent.MOUSE_UP, up);
        }       
       
        private function down (e:MouseEvent):void
        {
            clip.x = mouseX ;
            clip.y = mouseY ;
            etat = true ;           
            clip.addEventListener ("enterFrame",enterFrame);
        }
       
        private function up (e:MouseEvent):void
        {
            this.graphics.clear();
            etat = false ;
            clip.addEventListener ("enterFrame",enterFrame);
        }
       
        private function enterFrame(e:Event):void
        {
            if (etat==true)
            {
                this.graphics.clear();
                this.graphics.beginFill(0x00FF00, 0.1);
                this.graphics.lineStyle(1, 0x00FF00, 1.0);
                this.graphics.moveTo(0, 0);
                this.graphics.lineTo(0, mouseY);
                this.graphics.lineTo(mouseX, mouseY);
                this.graphics.lineTo(mouseX, 0);
                this.graphics.lineTo(0, 0);
                this.graphics.endFill();
            }
        }
    }

Je suppose que la structure de mon code est horrible et je m'en excuse. Je suppose (non cette fois j'en suis sûr) que c'est une erreur de débutant, normal j'en suis un !

Merci pour votre aide !

Etienne

1 réponse

Messages postés
5
Date d'inscription
lundi 4 mai 2009
Statut
Membre
Dernière intervention
27 mai 2009

J'ai remplacé :

clip.x = mouseX ;
clip.y = mouseY ;

dans la fonction down, par :

this.x = parent.mouseX ;
this.y = parent.mouseY ;

Maintenant, les rectangles se dessinent correctement, seulement, la scène derrière bouge à chaque clic, ce qui est logique...