IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ActionScript 3 Discussion :

erreur 1010 sur une boucle qui parcoure un tableau


Sujet :

ActionScript 3

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 23
    Points : 15
    Points
    15
    Par défaut erreur 1010 sur une boucle qui parcoure un tableau
    Bonjour,

    je veux faire une gallerie de mes réalisations sur mon site..

    J'ai donc créer une class qui s'appelle minia qui contien toutes les infos sur mes réalisations,quand on clic sur une instance de minia je veux pouvoir faire un trace qui me permet de récupérer toutes les infos

    Voilà le code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
     
     
    var liste_titre:Array=new Array();
     
    var liste_texte:Array=new Array();
     
    var liste_link_minia:Array=new Array();
     
    var liste_link_photo1:Array=new Array();
     
    var liste_link_photo2:Array=new Array();
     
    var liste_link_photo3:Array=new Array();
     
    var liste_link:Array=new Array();
     
    var list_real:Array=new Array();
     
    var chargeurXML:URLLoader=new URLLoader();
     
    chargeurXML.dataFormat=URLLoaderDataFormat.TEXT;
     
    chargeurXML.load(new URLRequest("contenu/realisations.xml"));
     
    chargeurXML.addEventListener(Event.COMPLETE,gestionXML);
     
    function gestionXML(e:Event):void
     
    {
     
    var donnees:XML=new XML(e.target.data);
     
    var listeAttributs:XMLList=new XMLList();
     
    listeAttributs=donnees..real.attributes();
     
    for each(var elt:XML in listeAttributs)
     
    {
     
        if(elt.name()=="titre"){liste_titre.push(elt.toString());}
     
        if(elt.name()=="texte"){liste_texte.push(elt.toString());}
     
        if(elt.name()=="link_minia"){liste_link_minia.push(elt.toString());}
     
        if(elt.name()=="link_photo1"){liste_link_photo1.push(elt.toString());}
     
        if(elt.name()=="link_photo2"){liste_link_photo2.push(elt.toString());}
     
        if(elt.name()=="link_photo3"){liste_link_photo3.push(elt.toString());}
     
        if(elt.name()=="link"){liste_link.push(elt.toString());}
     
    }
     
    for(var i:int=0;i<liste_titre.length;i++)
     
    {
     
        list_real[i]=new Minia(liste_titre[i],liste_texte[i],liste_link_minia[i],liste_link_photo1[i],liste_link_photo2[i],liste_link_photo3[i],liste_link[i]);
     
        list_real[i].x=-238;
     
        list_real[i].y=50*i;
     
        addChild(list_real[i]);
     
        list_real[i].load_minia();
     
        list_real[i].addEventListener(MouseEvent.CLICK,show_real);
     
        function show_real(Event:MouseEvent):void
     
        {
     
    list_real[i].texte;//texte est une propriété de ma classe,et je n'arrive pas à la récupérer
     
        }
     
     
     
     
     
    }
     
     
     
    }
    Voilà mon erreur

    TypeError: Error #1010: A term is undefined and has no properties.

    at MethodInfo-42()

    çà m'embete un peu,pouvez vous s'il vous plait m'aider?

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 147
    Points : 174
    Points
    174
    Par défaut
    en fait tu t'embêtes grave !
    tu n'utilises pas la puissance de la programmation objet, tu utilises des tableaux pour chaque propriété dont tu as besoin, les méthodes définit dans une boucle...

    quand tu parcours ton xml, il te faut créer directement ton objet Minia, dans lequel tu initialises tes propriétés titre,texte... (sans avoir besoin des if, juste avec elt.titre, elt.texte...) du style new Minia(elt.titre,elt.texte...)

    et ta méthode show_real doit se trouver dans la déclaration de ta classe Minia
    comme ça chaque instance d'objet possède ses propres propriétés et ses propres méthodes.

    voilou !

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 23
    Points : 15
    Points
    15
    Par défaut
    là mes instances de la classe Minia sont crées avec les données issuses du xml et placées dans un tableau...j'uitilise effectivement la POO.
    D'aiileur j'arrive à acceder aux propritétées de la classe en tapant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    trace(list_real[2].texte);
    Ici la fenetre de sortie affiche bien la propriété "texte" de l'instance stockée à la 3eme entrée(tableau commençant par 0) du tableau.
    Mon probleme est que dans ma boucle,les MouseEvent ne semblent pas fonctionner
    Effectivement je pourrais créer une classe qui crée toutes les réalisations ainsi que leur comportement mais je voudrais savoir pourquoi çà ne fonctionne pas dans mon cas

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 23
    Points : 15
    Points
    15
    Par défaut
    finalement mon probême est résolu ,le hic était au niveau de la gestion des évènement, et du ciblage,voilà la correction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    function show_real(evt:MouseEvent):void
     
        {
     
    evt.currentTARGET.texte;//texte est une propriété de ma classe,et je n'arrive pas à la récupérer
     
        }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2010] erreur 1004 sur une boucle
    Par bastien dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 29/05/2013, 09h07
  2. Réponses: 5
    Dernier message: 08/12/2012, 16h50
  3. Réponses: 7
    Dernier message: 16/10/2010, 15h48
  4. Réponses: 2
    Dernier message: 21/10/2008, 13h57
  5. Erreur 1004 sur une boucle simple
    Par ruzakruzak dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 06/07/2007, 09h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo