Erreur de fonction dans une classe

Résolu
on_drag_on Messages postés 1236 Date d'inscription vendredi 13 mai 2005 Statut Membre Dernière intervention 6 octobre 2010 - 5 mai 2009 à 18:30
on_drag_on Messages postés 1236 Date d'inscription vendredi 13 mai 2005 Statut Membre Dernière intervention 6 octobre 2010 - 7 mai 2009 à 19:41
Bonjour à tous,

Je suis entrain de créer une classe pour un lecteur vidéo avec chargement XML. Jusque-là tout fonctionne. Maintenant j'ai créé un clip bar de classe Bar dans laquelle est imbriqué un clip play_btn.
Je crée donc une fonction functionPlay et je place ma méthode play() dedans. Là il me sort une erreur: Un terme n'est pas défini et n'a pas de propriété. at Main/functionPlay().

Alors mes questions sont: sauriez-vous m'expliquer le pourquoi de cette erreur et, étant donné que je débute dans ces classes et que j'ai encore beaucoup de peine avec la logique AS3,est-ce que mon code vous semble "propre" ?

Voici mon code:

package

{
    import flash.display.*;
    import flash.events.*;
    import flash.net.URLLoader;
    import flash.net.URLRequest;
    import fl.video.FLVPlayback;
   
    public class Main extends MovieClip
   
        {
            private var xmlURL:URLRequest = new URLRequest("videos.xml");
            private var xmlLoader:URLLoader = new URLLoader(xmlURL);
            private var player:FLVPlayback = new FLVPlayback();
            private var bar:Bar = new Bar();

                public function Main():void
       
                    {
                        xmlLoader.addEventListener(Event.COMPLETE, xmlLoaded);
                        xmlLoader.load(xmlURL);
                        bar.play_btn.addEventListener(MouseEvent.CLICK, functionPlay);
                    }
       
                public function xmlLoaded(pEvt:Event):void
       
                    {
                        bar.y = 270;
                        player.width = 480;
                        player.height = 270;
                        player.autoPlay =false;
                        addChild(player);
                        addChild(bar)
                    }
                   
                public function functionPlay(pEvt:MouseEvent):void
               
                    {
                        var xml:XML = new XML (pEvt.target.data);
                        var xmlList:XMLList = xml.elements();
                        player.play(xmlList[1].@stream);
                    }
                   
            }
                   
}

Merci à ceux qui prendront le temps de se pencher sur mon problème ^^.

@+.
telov.ch

22 réponses

gremlins7 Messages postés 380 Date d'inscription mardi 29 avril 2003 Statut Membre Dernière intervention 28 décembre 2009
7 mai 2009 à 12:32
Salut,
oé j'ai capté, mais la comme ça à froid je sais pas trop...faut que je me documente
faudrait ptet demander à peg, il connait bien le xml
a+
0
on_drag_on Messages postés 1236 Date d'inscription vendredi 13 mai 2005 Statut Membre Dernière intervention 6 octobre 2010
7 mai 2009 à 19:41
C'est j'ai trouvé,

public function functionFwd(pEvt:MouseEvent):void
              
                    {
                        inc++;
                        if (inc < xml.elements().@stream.length())
                        {
                        player.play(xml.elements()[inc].@stream);
                        bar.infoVideo.text = (xml.elements()[inc].@title);
                        }
                        else
                        {
                            inc = (xml.elements().length()-1);
                        }
                    }

Je vais pouvoir poster tout soudain, encore merci ;)

@+.
telov.ch
0
Rejoignez-nous