Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[DIR MX] List and repeat

4 réponses
Avatar
Twinky
Hello

j'ai 20 listes nommées Reponse1 etc...
Quand je fais un repeat pour éviter de mettre 20 fois
Reponse1 = [0,0,0,0] ... avec

global Reponse1, Reponse2... jusque Reponse20
global Reponse
repeat with i = 1 to 20
Reponse+i = [0,0,0,0]
end repeat

lors de la compilation du script je n'ai pas d'erreur
par contre quand j'appelle InitListReponse
en lecture ( play ) , ca bug !!! avec message d'erreur
" Handler not defined "

Strange non, car il est déclaré en global le Reponse !!

on InitListReponse
global Reponse1, Reponse2... jusque Reponse20
global Reponse
repeat with i = 1 to 20
Reponse+i = [0,0,0,0]
end repeat
end

si je met Reponse&i = [0,0,0,0] j'ai une erreur de script
avec le message Misplaced Operator

on dirait qu'il n'est pas possible de reinitialiser +ieurs listes
en meme temps avec un repeat afin d'éviter le
Reponse1=[0,0,0,0]
Reponse2=[0,0,0,0] and so on.....

Merci pour l'aide apportée

Twinky

4 réponses

Avatar
Ned
le lingo est + un langage compilé qu'interprété, donc tes noms de var ont du
mal à être dynamique. jusqu'à MX (pour MX2004 je sais pas), la seule
solution est d'utiliser la commande "do" sur un string contenant ta ligne
lingo :

repeat with i = 1 to 20
monStr = "Reponse" & i & "=[0,0,0,0]"
do monStr
end repeat

toutefois arrivé à ce niveau, perso je trouverais plus pratique d'imbriquer
2 niveaux de listes :

mesRep = []
maRepIni = [0,0,0,0]
repeat with i = 1 to 20
add mesRep, maRepIni
end repeat

du coup au lieu de bosser sur Reponse4 par exemple, tu te retrouves à bosser
sur mesRep[4], et reponse4[1] devient mesRep[4][1]
'achement plus souple, isn'tit ? ;o)
--
------------------
Ned
----------------------------------------
Bien faire et laisser braire
----------------------------------------
Avatar
Ned
oups, grosse erreur :
mesRep = []
maRepIni = [0,0,0,0]
repeat with i = 1 to 20
add mesRep, duplicate(maRepIni)
end repeat

sinon toutes les entrées de mesRep pointent vers la même liste
--
------------------
Ned
----------------------------------------
Bien faire et laisser braire
----------------------------------------
Avatar
Twinky
Merci Ned :o)
Avatar
Ned
de nada :o)

--
------------------
Ned
----------------------------------------
Bien faire et laisser braire
----------------------------------------
"Twinky" a écrit dans le message de
news:c6nmt9$ss5$
| Merci Ned :o)
|
|