Syntaxe
Déplace l'élément courant ailleurs dans la même liste. Il reste l'élément courant.
MoveElement(<list>(), <where> [, <position>])Les éléments
| <list> | Une liste déclarée avec NewList, écrite avec ses parenthèses vides : scores(). |
|---|---|
| <where> | #AK_LIST_FIRST (au début), #AK_LIST_LAST (à la fin), #AK_LIST_BEFORE ou #AK_LIST_AFTER (avant ou après l'élément situé à <position>). |
| <position> | Obligatoire avec #AK_LIST_BEFORE et #AK_LIST_AFTER, ignoré sinon. La position de l'élément de référence, comptée avant le déplacement. |
À savoir
- Ne renvoie rien : écrivez-le seul sur sa ligne.
- Sans élément courant, le programme s'arrête avec « MoveElement requires a current list element ». Un
<where>inconnu ou une<position>hors de la liste l'arrêtent aussi. - Omettre
<position>avec#AK_LIST_BEFOREou#AK_LIST_AFTERcompile, puis arrête le programme ET perd l'élément courant : il est retiré de la liste et n'y revient jamais. Donnez toujours la position. - Pour qui vient de PureBasic : l'élément de référence est une position, pas un pointeur d'élément.
Exemple
NewList a.integer()FOR k = 1 TO 5 AddElement(a()) a() = kNEXTSelectElement(a(), 4)MoveElement(a(), #AK_LIST_BEFORE, 1)Console(Str(a()) + " at " + Str(ListIndex(a()))) ' 5 at 1FOREACH a() Console(Str(a())) ' 1, 5, 2, 3, 4NEXTDans le manuel : Tableaux, listes et maps