Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1386 connectés 

  FORUM HardWare.fr
  Programmation
  Flash/ActionScript

  [AS3] Donner des propriétés en masse à un objet

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[AS3] Donner des propriétés en masse à un objet

n°1910786
abais
Posté le 31-07-2009 à 17:46:58  profilanswer
 

Salut les AS-treux !
 
Dites, existe t-il une solution miracle en AS3 pour donner des propriétés en masse à un objet lors de son instanciation  ?
Je veux en faite éviter de repéter monObjet.maPropriete = valeur ...
Par exemple, sur le framework Away3D, on peut definir les propriétés d'un cube nouvelement créé de cette manière :

Code :
  1. var monCube:Cube = new Cube( { x:2, y:3, z:15, alpha:0.5, rotationY:62, width:35, ... } );


Le tout dans l'ordre qu'on veut bien entendu... Existe-t'il l'équivalent en natif en AS3 ?
Comment m'y prendre si je dois créer une fonction moi même (notament dans les argument de celle-ci, pour pouvoir mettre propriété:valeur sans prendre en compte de l'ordre...)
 
Merci :)


Message édité par abais le 31-07-2009 à 17:47:23

---------------
Le membre ci-contre n'est pas responsable du message ci-dessus.
mood
Publicité
Posté le 31-07-2009 à 17:46:58  profilanswer
 

n°1910807
stealth35
Posté le 31-07-2009 à 19:05:17  profilanswer
 

tu pourrais le faire avec  ...args

 

grenre :
function test(...args)

 

test(x, v, t ,t ,t ,t ,t, ,t ,t, e,e, e ,e)

 

et tu recuperes  ls valeur avec le tableau  "args"


Message édité par stealth35 le 31-07-2009 à 19:08:37
n°1910832
abais
Posté le 31-07-2009 à 20:12:01  profilanswer
 

Tu m'excuseras mais je n'ai rien compris ! ou tu veux en venir  ? :pt1cable: ...
C'est quoi ce typage "..." deja ?


---------------
Le membre ci-contre n'est pas responsable du message ci-dessus.
n°1910846
tpierron
Posté le 31-07-2009 à 21:06:41  profilanswer
 


Well, je ne connais rien en AS3, mais ça ressemble beaucoup à du javascript ton code.
 
Si c'est la même chose, tu peux déclarer un objet avec notation JSON, du style :

Code :
  1. var monCube = {x:2, y:3, z:15, alpha:0.5, rotationY:62, width:35}


Ça va te créer un objet monCube avec les propriétés x, y, z, alpha, rotationY et width déjà déclarée.
 
Si tu veux ajouter les propriétés à un objet existant, utilise soit une fonction et parcours le tableau "arguments", ou duplique les propriétés d'un objet ad-hoc. Par exemple pour copier les propriétés de "monCube" dans un objet "monObjet", utilise :

Code :
  1. for (var i in monCube)
  2.    monObjet[i] = monCube[i]


Ou via une fonction :

Code :
  1. function addProp(monObjet)
  2. {
  3.    for (var i = 1; i < arguments.length; i += 2)
  4.        monObjet[arguments[i]] = arguments[i+1]
  5. }


Qui s'utilise de la sorte :

Code :
  1. addProp(monObjet, "x", 2, "y", 3, "z", 15, "alpha", 0.5, "rotationY", 62, "width", 35)


n°1910905
abais
Posté le 01-08-2009 à 13:19:38  profilanswer
 

Tiens, je connaissais cette nomenclature "JSON" comme tu dis, mais je n'avais jamais testé en AS3,et ça fonctionne bien, merci tpierron !

 
Code :
  1. function addProp (_cible:Object, _properties:Object)
  2. {
  3.         for (var i in _properties)
  4.       _cible[i] = _properties[i]
  5. }
  6.  
  7. addProp(monObjet,{x:250,y:56});


Message édité par abais le 01-08-2009 à 13:20:37

---------------
Le membre ci-contre n'est pas responsable du message ci-dessus.
n°1910933
stealth35
Posté le 01-08-2009 à 19:17:24  profilanswer
 
n°1910976
abais
Posté le 02-08-2009 à 12:43:46  profilanswer
 


Thx stealth :) je ne connaissais pas ce ...args, c'est bon à connaitre tout ça !


---------------
Le membre ci-contre n'est pas responsable du message ci-dessus.

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Flash/ActionScript

  [AS3] Donner des propriétés en masse à un objet

 

Sujets relatifs
Défilement d'objet et scintillementProblème de formulaire: objet = [SPAM]
Erreur 1004: Méthode Open de l'objet workbook échouéeErreur 1004 : La methode 'Cells' de l'objet '_Global' a échoué
PHP/MySQL INSERT INTO en masse qui déraille (oubli de données)[Access 2007] modification de masse
Récupérer les propriétés d'un dossierpassage par référence et objet local
Objet cliquable tableau 
Plus de sujets relatifs à : [AS3] Donner des propriétés en masse à un objet


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR