Cela s'apparente plus aux anciens "sous-programmes appelés pas "Gosub" et qui ressortaient par un "Return".
Mais comme l'appel de procédures n'existe pas dans la version 2.0.7.3 et qu'il peut-être particulièrement fastidieux de réécrire sans cesses les mêmes séquences répétitives, voici un exemple de (pseudo) appel de procédure.
Le but est de montrer qu'on peut facilement appeler une même "procédure" à partir de différents endroits d'un programme ; il suffit pour cela de "transmettre" des paramètres (objet du traitement, adresse de retour) en les mémorisant dans des variables pré-définies avant le branchement sur la procédure.
Voici un petit exemple :
On n'est pas limité par le nombre de paramètres, puisque la routine utilise les variables d'origine. Il faut seulement faire attention à l'adresse de retour qu'on met dans la variable $Return !** Script d'Actionaz exporté **
Script settings
Auteur du script : Guy2g
Programme : actionaz
Version du programme : 2.0.7.3
Version du script : 1.0.1.0
Système d'exploitation : windows
Résolution : 1024x768
Langue : fr
Nombre d'actions : 19
Intervalle : 0ms
Répéter : 1 fois
Actions
000->Boîte de dialogue : Afficher "A partir d'un programme principal, on va appeler des procédures", titre : "Appels de Procédures", type : Ok, icône : Information (Affiche un message, peut demander oui ou non.)
001->Variable : $Work (chaine) = "en retard " (Défini une variable, ajoute ou soustrait une valeur.)
002->Variable : $Return (chaine) = "0004" (Défini une variable, ajoute ou soustrait une valeur.)
003->Aller à : Aller à la ligne/au label PROC1 (Aller à une ligne/un label.)
004->Variable : $Work (chaine) = "pleurent" (Défini une variable, ajoute ou soustrait une valeur.)
005->Variable : $Return (chaine) = "0007" (Défini une variable, ajoute ou soustrait une valeur.)
006->Aller à : Aller à la ligne/au label PROC2 (Aller à une ligne/un label.)
007->Variable : $Work (chaine) = "arrivé" (Défini une variable, ajoute ou soustrait une valeur.)
008->Variable : $Return (chaine) = "0010" (Défini une variable, ajoute ou soustrait une valeur.)
009->Aller à : Aller à la ligne/au label PROC1 (Aller à une ligne/un label.)
010->Variable : $Work (chaine) = "chantent" (Défini une variable, ajoute ou soustrait une valeur.)
011->Variable : $Return (chaine) = "0013" (Défini une variable, ajoute ou soustrait une valeur.)
012->Aller à : Aller à la ligne/au label PROC2 (Aller à une ligne/un label.)
013->Boîte de dialogue : Afficher "Encore ?", titre : "That's All Folks !", type : Oui-Non, icône : Aucune, oui : aller à la ligne/au label 1, non : ne rien faire (Affiche un message, peut demander oui ou non.)
014->Stop : Stoppe l'exécution (Stoppe l'exécution du script.)
PROC1->Boîte de dialogue : Afficher "Le printemps est {$Work} ...", titre : "Procédure 1", type : Ok, icône : Aucune (Affiche un message, peut demander oui ou non.)
016->Aller à : Aller à la ligne/au label {$Return} (Aller à une ligne/un label.)
PROC2->Boîte de dialogue : Afficher "... les oiseaux {$Work} !", titre : "Procédure 2", type : Ok, icône : Aucune (Affiche un message, peut demander oui ou non.)
018->Aller à : Aller à la ligne/au label {$Return} (Aller à une ligne/un label.)
En espérant que ça vous soit utile autant qu'à moi !