Les Fonctions dans AutoIt sont des objets d'une classe primaire. Au del� d'autres choses, cela signifie que vous pouvez assigner une fonction � une variable, la passer comme argument ou en faire une valeur de retour d'une autre fonction.
A part une certaine port�e sp�cifique - au regard des r�gles de d�claration (les noms des fonctions int�gr�es sont r�serv�s et les fonctions UDF peuvent �tre surcharg�es seulement localement), les noms des fonctions n'ont pas de statut sp�cial dans le langage.
#include <MsgBoxConstants.au3>
Local $vFunc = MsgBox
$vFunc($MB_OK, "Bonjour!", "Belle journ�e aujourd'hui.")
Beaucoup de fonctions contiennent des param�tres optionnels qui peuvent �tre omis. Si vous souhaitez sp�cifier un param�tre optionnel, vous devrez imp�rativement sp�cifier tous les param�tres qui le pr�c�dent !
Par exemple, consid�rons Run ( "filename", ["workingdir" [, flag]] ). Si vous voulez sp�cifier flag, vous devez sp�cifier workingdir.
Quand un param�tre optionnel doit �tre d�fini et qu'il est pr�c�d� par un ou plusieurs param�tres optionnels, la valeur par d�faut doit �tre donn�e pour ce param�tre. De mani�re g�n�rale, les fonctions devraient accepter le mot-cl� Default lorsque vous souhaitez utiliser le param�tre par d�faut. Voir la description du param�tre optionnel correspondant pour plus de d�tails.
Beaucoup de fonctions Win___ contiennent un param�tre optionnel "text". Ce param�tre est sens� vous aider � diff�rencier les fen�tres qui ont un titre identique.
Indication de succ�s ou d'�chec d'une fonction
Quelques fonctions indiquent le succ�s ou l'�chec comme valeur de retour; d'autres l'indiquent en positionnant le flag @error. Et d'autres utilisent les deux ...
Si la m�thode Return value est utilis�e, le fichier d'aide indiquera les valeurs attendues pour le succ�s et l'�chec - mais la valeur du succ�s est typiquement non nulle pour permettre une lecture facile du code...
If SomeUserFunc() Then ;...si la fonction a r�ussi.
If Not SomeUserFunc() Then ;...si la fonction a �chou�.
Local $sFileRead = FileReadLine("C:\someFile.txt")
If @error = -1 Then ; La fin du fichier a �t� atteinte.
Si une fonction utilise l'indicateur d'erreur @error, vous devez toujours le tester imm�diatement apr�s le retour de la fonction car @error sera r�initialis� � 0 lors de l'appel de la fonction suivante. Si @error n'est pas nul, ne tentez pas d'utiliser ou d'acc�der � la valeur de retour de la fonction, car dans ce cas la valeur de retour est g�n�ralement ind�finie ...