[R] Utilisation des fonctions

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
phylonia
Niveau 3
Niveau 3
Messages : 48
Enregistré le : jeu. 19 nov. 2009 23:46
Localisation : Sur mon lit (avec triple matela) devant l'ordinateur en face de toi
Status : Hors ligne

[R] Utilisation des fonctions

#1

Message par phylonia »

Voila j'aimerais s'avoir utiliser :

1) Comment lancer une fonction "func" a l'aide d'une fonction (j'ai vue sa quelque part je retrouve plus)

2) Comment sortir d'une boucle "do" et "until (avec une fonction d'arret)"

-----------------------------------------------------------

Pour le 1) c'est pas

Code : Tout sélectionner

            _"func"()
 
Au lieu de "func" le nom de la func ?

-----------------------------------------------------------

Pour le 2) je sais pas si un "ExitLoop" suffit pour faire

Code : Tout sélectionner

If @error then
Exitloop
"Aller a la fonction .... (je sais pas comment faire alors je marque sa)"
EndIf
 
Car je veux jongler avec des functions

Si ia pas sa sa va a cette fonction la fonction clique ici ici ici si ia toujours pas sa clique ici ici ici etc et une sérine de 10 ou 11fonctions je veux pas que sa appuis sur une touche a chaque fonction je veux que sa la lance auto
Modifié en dernier par phylonia le sam. 19 déc. 2009 17:08, modifié 1 fois.
Avatar du membre
GELDROC
Niveau 6
Niveau 6
Messages : 295
Enregistré le : sam. 10 oct. 2009 10:15
Status : Hors ligne

Re: [..] Utilisation des fonctions

#2

Message par GELDROC »

Bonjours je te laisse ce petit exemple en espérant que cela va t'aider

voila la fonction 1 et 2 renvoi un résulta et donc la fonction 0 analyse c'est résulta a toi de jouer maintenant , bonne chance

Code : Tout sélectionner

_0()

Func _0()
Local $FUNC_1,  $FUNC_2
Local $Var1 = 1                     ;declaration de la varible pour la function 1
Local $Var2 = 0                     ;declaration de la varible pour la function 2

$FUNC_1 = _1($Var1)
If $FUNC_1 <> 1 Then 
MsgBox(0, "", $FUNC_1)
Else
MsgBox(0, "", "La variable de la function 1 est = a 1")
EndIf

$FUNC_2 = _2($Var2)
If $FUNC_2 <> 1 Then
MsgBox(0, "", $FUNC_2)
Else
MsgBox(0, "", "La variable de la function 2 est = a 1")
EndIf   
EndFunc 


Func _1($var)
    If $var = 1 Then
    Return 1
    Else 
    Return "La variable de la function 1 est Diferente de 1"
    EndIf
EndFunc

Func _2($var)
    If $var = 1 Then
    Return 1
    Else 
    Return "La variable de la function 2 est Diferente de 1"
    EndIf
EndFunc
 
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11818
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Utilisation des fonctions

#3

Message par Tlem »

Il est étrange de voir que certains cherche les complications alors qu'il y a vraiment plus simple.

Une fonction est un morceau de code qui est exécuté lorsque celle-ci est appelée. Et ce, depuis n'importe quel endroit du script voir même depuis un autre script (celui-ci est déclaré dans les Includes) ou même depuis la fonction elle même ... :roll:
Il est donc totalement ridicule de créer une fonction qui appellera une autre fonction ...

D'après le peut d'éléments que vous donnez, je dirais que vous devez créez autant de fonction que d'action ou séquence d'actions distinctes.
Ensuite c'est à vous de créer et d'organiser la trame d'utilisation de chacune des fonctions selon vos critères de choix et ceci peut être fait dans le corps de votre code ou pourquoi pas, dans une fonction à part. ;)

Pour illustré, voici un exemple de code :
► Afficher le texte
Pour votre deuxième question, effectivement ExitLoop permet de sortir de n'importe quelle boucle.
On s'en sert souvent dans les boucles While qui en règle générale sont infinie et donc pour éviter que le code tourne en rond indéfiniment, on crée une condition ou on teste une condition qui permettra la sortie de la boucle.
Ceci est donc valable pour n'importe quelle boucle (While/Wend, For/Next ou Do/Until).
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
phylonia
Niveau 3
Niveau 3
Messages : 48
Enregistré le : jeu. 19 nov. 2009 23:46
Localisation : Sur mon lit (avec triple matela) devant l'ordinateur en face de toi
Status : Hors ligne

Re: [..] Utilisation des fonctions

#4

Message par phylonia »

Merci dommage que j'ai trouver je venez rectifier il y a beaucoup plus simple ...

Code : Tout sélectionner

Func nom_func1()
While 1

$pos = pixelsearch( 51, 48, 968, 579, 0xD7D6C2)
If not @error Then
MouseClick("left", $pos[0], $pos[1], 1, 3)
EndIf

Sleep ( 1000 )

If @error Then
    nom_func2()
EndIf

sleep ( 2000 )
WEnd
EndFunc
 
On la démarre avec

Code : Tout sélectionner

nom_func1()
 
Sa reprend le message précédent en plus "noob" vue que j'aime pas utiliser sa vue que je sais pas les utilsiers...
Répondre