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 :

Question sur addItem et la contraction d'une synthaxe [CS5]


Sujet :

ActionScript 3

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Août 2006
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 30
    Par défaut Question sur addItem et la contraction d'une synthaxe
    Salut tout le monde

    Alors voilà, il faudrait que je remplisse un tableau (componement datagrid) en AS3, avec des données "fixes". Pas de base de données externe ni xml.

    J'ai par exemple, ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    var msg1: Object = {Num:"01", Info:"voiture"};
    var msg2: Object = {Num:"02", Info:"maison"};
    var msg3: Object = {Num:"03", Info:"bidule"};
    var msg4: Object = {Num:"04", Info:"citron"};
    var msg5: Object = {Num:"05", Info:"logiciel"};
    var msg6: Object = {Num:"06", Info:"chats"};
    Et pour entrer ça directement dans le tableau, je fais ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    datagrid.addItem(msg1);
    datagrid.addItem(msg2);
    datagrid.addItem(msg3);
    datagrid.addItem(msg4);
    datagrid.addItem(msg5);
    datagrid.addItem(msg6);
    Il n'y a pas un moyen de réduire le "additem"? Car pour le projet que j'ai ça va me faire un bon million de lignes ... je veux simuler une fausse boîte de réception email pour un jeu...

    J'avais bien essayé ça (disons pour afficher les 5 premières données), bien que n'étant pas super doué en code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    var i:int;
    for(i = 0; i < 5; i++) {
    datagrid.addItem(msg[i]);
    }
    Mais il me dit ceci : "Access of undefined property msg."

    Quelqu'un pourrait-il me dire où j'ai bugué svp?

    Merci de vos conseils, et bonne zournée


    ps: j'utilise flash cs6

  2. #2
    Membre émérite
    Femme Profil pro
    Autre
    Inscrit en
    Janvier 2017
    Messages
    340
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Autre

    Informations forums :
    Inscription : Janvier 2017
    Messages : 340
    Par défaut
    Bonjour,
    Si le code est écrit sur une image clé et en dehors d'une fonction, les variables seront converties en propriétés de classe et il est alors possible de les cibler à partir de leur nom en faisant : this["msg"+i].
    Si le code est dans une fonction, les variables sont alors locales à la fonction et je pense qu'il n'est pas possible de cibler une telle variable à partir de son nom en AS3 (c'était possible en AS1/2).

    Dans le cas présent, une bonne méthode serait d'utiliser un tableau :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    var msgs: Array = [
    	{Num:"01", Info:"voiture"},
    	{Num:"02", Info:"maison"},
    	{Num:"03", Info:"bidule"},
    	{Num:"04", Info:"citron"},
    	{Num:"05", Info:"logiciel"},
    	{Num:"06", Info:"chats"}
    ];
     
    var i: int;
    for(i = 0; i < msgs.length; i++) {
    	datagrid.addItem(msgs[i]);
    }

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Août 2006
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 30
    Par défaut
    Merci beaucoup Loralina, ça fonctionne très bien et donne le résultat que je voulais

    Quelques ajustements visuels et ça sera nickel !

    Bonne journée

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 14/06/2012, 15h05
  2. Questions sur la mise en place d'une solution IMAP
    Par coincoin73 dans le forum Réseau
    Réponses: 4
    Dernier message: 08/12/2010, 23h53
  3. question sur la mise en place d'une architecture glpi oracle
    Par sousoujda2 dans le forum Langage SQL
    Réponses: 1
    Dernier message: 17/08/2008, 16h07
  4. Question sur la sélection de donnée dans une base
    Par Masmeta dans le forum Langage SQL
    Réponses: 2
    Dernier message: 17/04/2008, 16h16
  5. Question sur exports et les classes (pour une dll)
    Par DjPoke dans le forum Langage
    Réponses: 7
    Dernier message: 08/08/2005, 19h25

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