Page 1 sur 1

appel de Procedure de façon indexé

Publié : lun. 18/mai/2026 11:40
par pasbel
Bonjour à tous

Ça va être compliqué à expliquer...
Je voudrais savoir s'il y aurait moyen d'appeler des Procedures par des appels indexés, par exemple j'ai une boucle for/next de 0 à 10, et je voudrais qu'à chaque incrémentation, une Procedure différente soit appelée, en utilisant l'index de la boucle, plutôt que d'utiliser ensuite des If/Endif ou Select ou autres pour tester ça ?
Pour l'exemple (qui ne marcherait pas) :
For a = 0 to 10
maProcedure-***-()
Next

a = 0 > maProcedure0()
a = 1 > maProcedure1()
...
a = 10 > maProcedure10()

Sinon, je passerai par une autre méthode plus longue ;-)

Re: appel de Procedure de façon indexé

Publié : lun. 18/mai/2026 15:09
par Mindphazer
Je ne sais pas si ça répond exactement à la problématique, mais tu peux stocker les adresses de tes procédures dans un tableau, puis utiliser CallFunctionFast()
un truc comme ça :

Code : Tout sélectionner

Procedure MaProcedure0()
  Debug "Procedure 0"
EndProcedure

Procedure MaProcedure1()
  Debug "Procedure 1"
EndProcedure

Procedure MaProcedure2()
  Debug "Procedure 2"
EndProcedure

; Tableau d'adresses de procédures
Global Dim ProcTable.i(2)

ProcTable(0) = @MaProcedure0()
ProcTable(1) = @MaProcedure1()
ProcTable(2) = @MaProcedure2()

For a = 0 To 2
  CallFunctionFast(ProcTable(a))
Next

Re: appel de Procedure de façon indexé

Publié : lun. 18/mai/2026 15:43
par pasbel
Je me posais la question après avoir fait le post, si cette méthode marcherait, ou avec une list.

Merci beaucoup à toi, je teste ça en rentrant.

Bon AM