[R] Problème (simple) sur une boucle

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
cedelire
Niveau 1
Niveau 1
Messages : 4
Enregistré le : lun. 12 mai 2008 16:19
Status : Hors ligne

[R] Problème (simple) sur une boucle

#1

Message par cedelire »

Bonjour je découvre ce jour même le logiciel AutoIt et ce forum, je suis donc tout a fait débutant, je m'essaie à la programmation et là je bute sur les boucles.
Je pense que mon problème est simple, je veux en fait exécuter une boucle à l'infini jusqu'à ce que j'appuie sur la touche echap de mon clavier (boucle de type "Faire jusqu'à..." j'imagine). Ce qui donne:

Code : Tout sélectionner

Do
;actions à effectuer
 
Until ( proposition )
 
Et je ne sais pas quoi mettre à la place de proposition pour dire "jusqu'à ce que j'appuie sur echap".

Merci d'avance pour votre aide.
Modifié en dernier par cedelire le lun. 12 mai 2008 17:05, modifié 1 fois.
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11791
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Problème (simple) sur une boucle

#2

Message par Tlem »

Vous pouvez effectivement utiliser une boucle Do en surveillant l'appui d'une touche dans la boucle, mais ça ne sera pas fiable à 100% car si vous faites un traitement long dans votre boucle, il n'aura pas le temps de voir l'appui de la touche.

Voici une manière classique de procéder à ce type d'utilisation :

Code : Tout sélectionner

; Création d'un 'lien' entre la fonction Quit() et l'appuis de la touche ESC
HotKeySet("{ESC}", "Quit")

; Boucle infinie (Qui sera intéronpue lors de l'appuis sur ESC)
While 1
    Sleep(1000)
WEnd

; La fonction qui permet l'affichage du message puis de quitter le script.
Func Quit()
    MsgBox(0, "Info", "Vous avez appuyez sur la touche ESC !")
    Exit
EndFunc   ;==>Quit
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é".
cedelire
Niveau 1
Niveau 1
Messages : 4
Enregistré le : lun. 12 mai 2008 16:19
Status : Hors ligne

Re: [..] Problème (simple) sur une boucle

#3

Message par cedelire »

Merci beaucoup je vais essayer, que signifie Sleep(1000) ?
Encore merci
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11791
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Problème (simple) sur une boucle

#4

Message par Tlem »

Cliquez sur le mot Sleep dans le code du message au dessus. ;)
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é".
cedelire
Niveau 1
Niveau 1
Messages : 4
Enregistré le : lun. 12 mai 2008 16:19
Status : Hors ligne

Re: [..] Problème (simple) sur une boucle

#5

Message par cedelire »

oui d'accord je ne connaissais pas cette fonction.
donc je ne suis pas obligé de le mettre dans mon script si je comprends ?
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11791
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [R] Problème (simple) sur une boucle

#6

Message par Tlem »

Vous pouvez effectivement vous passez de la temporisation, mais dans ce cas le script va utiliser 100% des ressources disponible de votre CPU, et ça va chauffer. ;)

Si vous devez faire une boucle quelconque, pensez toujours à mettre une temporisation (Même de 30 ms mais au moins une !).

Allez faire un tour sur la doc en Français : http://www.autoitscript.fr/autoit3/docs/

Tout n'est pas encore traduit, mais la partie principale oui.
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é".
cedelire
Niveau 1
Niveau 1
Messages : 4
Enregistré le : lun. 12 mai 2008 16:19
Status : Hors ligne

Re: [R] Problème (simple) sur une boucle

#7

Message par cedelire »

Merci beaucoup pour cette aide précieuse
Répondre