projman/hlp/fr/tcl/after.htm
2015-10-19 14:27:31 +04:00

54 lines
5.4 KiB
HTML

<HTML><HEAD>
<BASEFONT FACE="Times New Roman" SIZE="2" COLOR="#000000">
</HEAD>
<BODY>
<div><H3><b>after&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Commandes Internes Tcl</b></H3></div>
<HR ALIGN="center">
<div ALIGN="CENTER"><A HREF="index.htm"><b>Index</b></A>&nbsp;&nbsp;<A HREF="88.htm"><b>Suivant</b></A></div>
<div><b>NOM</b></div><br>
<div ALIGN="LEFT" style="margin-left: 51px;">after - Execute une commande après un certain délai
</div><br>
<div><b>SYNTAXE</b></div><br>
<div ALIGN="LEFT" style="margin-left: 51px;"><b>after </b><i>ms</i> <br>
<b>after </b><i>ms </i>?<i>script script script ...</i>? <br>
<b>after cancel </b><i>id</i> <br>
<b>after cancel </b><i>script script script ...</i> <br>
<b>after idle </b>?<i>script script script ...</i>? <br>
<b>after info </b>?<i>id</i>?
</div><br>
<div><b>DESCRIPTION</b></div><br>
<div ALIGN="LEFT" style="margin-left: 51px;">Cette commande est utilisée pour retarder l'exécution d'un programme ou exécuter une commande en arrière-plan après un certain délai
. Elle a plusieurs formes, dépendantes du premier argument de la commande: </div>
<div ALIGN="LEFT" style="margin-left: 51px;">
<DL>
<DT><b>after </b><i>ms</i><br>
</DT><DD><i>Ms</i> doit être un entier donnant une durée en millisecondes. La commande dort pendant <i>ms</i> millisecondes et ensuite retourne. Tant que la commande dort l'application ne répond pas aux évènements.
</DD>
<DT><br>
<b>after </b><i>ms </i>?<i>script script script ...</i>?<br></DT><DD>Sous cette forme la commande retourne immédiatement, mais elle prépare une commande Tcl à être exécutée <i>ms</i> millisecondes plus tard comme un gestionnaire d'évènement. La commande sera exécutée exactement une fois, à l'instant donné. La commande retardée est formée par concaténation de tout les arguments de <i>script</i> de la même façon que par la commande <A HREF="98.htm"><b>concat</b></A>. La commande sera exécutée au niveau global (en dehors du contexte de toute fonction Tcl). Si une erreur se produit pendant l'exécution de la commande retardée alors le mécanisme <A HREF="90.htm"><b>bgerror</b></A> est utilisé pour rapporter l'erreur. La commande <b>after</b> renvoie un identificateur qui peut être utilisé pour annuler la commande retardée en utilisant <b>after cancel</b>.
</DD>
<DT><br>
<b>after cancel </b><i>id</i><br></DT><DD>Annule l'exécution d'une commande retardée qui a été précedemment programmée. <i>Id</i> indique quelle commande sera annulée; il doit avoir été la valeur de retour d'une précédente commande<b> after</b>. Si la commande désignée par <i>id</i> a déjà été exécutée alors la commande <b>after cancel</b> n'a pas d'effet.
</DD>
<DT><br>
<b>after cancel </b><i>script script ...</i><br>
</DT><DD>Cette commande annule aussi l'exécution d'une commande retardée. Les arguments <i>script</i> sont concaténés séparés par des espaces (comme dans la commande <A HREF="98"><b>concat</b></A>). S'il y a une commande en attente qui correspond à la chaîne, elle est annulée et ne sera jamais exécutée; si aucune commande n'est en attente alors la commande <b>after </b><b>cancel</b> n'a pas d'effet.
</DD>
<DT><br>
<b>after idle </b><i>script </i>?<i>script script ...</i>?<br>
</DT><DD>Concatène les arguments <i>script</i> avec des séparateurs espace (comme dans la commande<A HREF="98"><b> concat</b></A>), et prépare le script résultant à être évalué plus tard comme un callback inactif . Le script sera lancé exactement une fois, à l'instant de rentrer dans la boucle d'évènement et qu'il n'y a pas d'évènements à traiter. La commande renvoie un identificateur qui peut être utilisé pour annuler la commande retardée en utilisant <b>after cancel</b>. Si une erreur se produit pendant l'exécution du script alors le mécanisme <A HREF="90.html"><b>bgerror</b></A> est utilisé pour rapporter l'erreur.
</DD>
<DT><br>
<b>after info </b>?<i>id</i>?<br></DT><DD>Cette commande renvoie l'information au sujet des gestionnaires d'évènement existants. Si aucun argument <i>id</i> est fourni, la commande renvoie une liste d'identificateurs de tous les gestionnaires d'évènements existants créés par la commande <b>after</b> pour cet interpréteur. Si <i>id</i> est fourni, il spécifie un gestionnaire existant; <i>id</i> doit avoir été la valeur de retour d'un précedent appel de <b>after</b> et il ne doit pas avoir été déjà déclenché ou été annulé. Dans ce cas la commande renvoie une liste de deux éléments. Le premier élément de la liste est le script associé à <i>id</i>, et le second élément est soit <b>idle</b> soit <b>timer</b> pour indiquer de quelle sorte de gestionnaire d'évènement il s'agit.</DD>
</DL>
</div>
<div ALIGN="LEFT" style="margin-left: 51px;">Les formes <b>after </b><i>ms</i> et <b>after idle</b> de la commande supposent que l'application est pilotée par évènement: les commandes retardées ne seront pas exécutées tant que l'application ne rentrera pas dans la boucle d'évènement. Dans les applications qui ne sont pas normalement pilotées par évènement, telles que <A HREF="168.htm"><b>tclsh</b></A>, on peut activer la boucle d'évènement avec les commandes <A HREF="180.htm"><b>vwait</b></A> et <A HREF="176.htm"><b>update</b></A>.
</div><br>
<div><b>VOIR EGALEMENT</b></div><br>
<div ALIGN="LEFT" style="margin-left: 51px;"><A HREF="90.htm">bgerror</A>&nbsp; </div><br>
<div>Dernière révision: 7.5</div>
<br>
<br><div ALIGN="CENTER"><A HREF="index.htm"><b>Index</b></A>&nbsp;&nbsp;<A HREF="88.htm"><b>Suivant</b></A></div>
</BODY></HTML>