Page 1 sur 1

[R] Boucle d'ecriture.

Posté : ven. 09 janv. 2009 18:33
par NewHere
Bonjour,

EDIT :
J'utilise la fonction _ispressed avec une fonction dans une condition, MAIS quand j'appuie sur la touche voulue (ici "T") cela m'ecrit le "T" une centaine de fois dans le fichier $file. DONC je recherche une boucle qui pourrait etre infini et faire que quand j'appuie sur la touche donné cela ne l'ecrit pas 200 fois mais une fois à chasue appuyage.

exemple :
► Afficher le texte

Re: [..] Boucle d'ecriture.

Posté : ven. 09 janv. 2009 18:46
par Tlem
1 - Vous devriez vous relire lorsque vous écrivez un message !!!
Car votre message est difficilement compréhensible.

2 - Vous devriez aller faire un tours du coté des Tutos au sujet des boucles.
Car si dans une boucle While vous mettez un ExitLoop sans condition, ça ne risque pas de fonctionner.

Re: [..] Boucle d'ecriture.

Posté : ven. 09 janv. 2009 18:56
par NewHere
j'ai deja fait le tour et le probleme se pose la, je sais pas quoi mettre pour la conditions :x

Re: [..] Boucle d'ecriture.

Posté : ven. 09 janv. 2009 19:09
par Tlem
Réfléchissez un peut et posez votre problème de manière plus explicite.
Relisez plusieurs fois le message comme si ce n'était pas vous qui l'avez écrit car pour l'instant votre demande n'est pas claire.

Re: [..] Boucle d'ecriture.

Posté : ven. 09 janv. 2009 19:17
par NewHere
Voila j'ai edité en etant plus claire

Re: [..] Boucle d'ecriture.

Posté : ven. 09 janv. 2009 19:42
par Tlem
Votre problème est donc simple.
Vous devez faire une boucle infinie, donc :

Code : Tout sélectionner

While 1
     Sleep(100) ; Pour ne pas trop sollicité le CPU
Wend
Ensuite, dans cette boucle, vous devez scanner si appuis sur la touche T.
Si la touche T est appuyée alors on écrit une ligne dans le fichier $file :

Code : Tout sélectionner

while 1
    Sleep(100)
    if _ispressed("64") then FileWrite($file, "T")
WEnd
CQFD.

Re: [..] Boucle d'ecriture.

Posté : ven. 09 janv. 2009 19:49
par NewHere
Avec une function cela donnerais :
► Afficher le texte
?

Re: [..] Boucle d'ecriture.

Posté : ven. 09 janv. 2009 20:10
par jbnh
C'est bien simple, tu essayes, si ca marche pas, c'est qu'il y a une erreur et tu cherches un minimum pourquoi. Si ca marche, alors oui, ca marche.

Re: [..] Boucle d'ecriture.

Posté : ven. 09 janv. 2009 20:16
par NewHere
J'ai essayé, mais cela m'ecrit plein de t :s

Re: [..] Boucle d'ecriture.

Posté : ven. 09 janv. 2009 20:39
par Tlem
Ben c'est normal, puisque vous faite l'écriture dans une boucle infinie ...
Placez la fonction en dehors de la boucle et lancez l'appel depuis le contrôle IsPressed.

Re: [..] Boucle d'ecriture.

Posté : ven. 09 janv. 2009 20:50
par NewHere
► Afficher le texte
Cela m'ecrit encore des T, mais moins.

Re: [..] Boucle d'ecriture.

Posté : ven. 09 janv. 2009 22:24
par jbnh
met un sleep dans ta boucle (50 ou 100) car sans sleep, si tu presses un "peu trop longtemps" (je parle ici en millième de secondes) ta touche, elle sera détectée plusieurs fois, avec un sleep 100, tu as 1 dixième de secondes pour dé-presser ta touche.

Re: [..] Boucle d'ecriture.

Posté : sam. 10 janv. 2009 19:04
par NewHere
Effectivement, merci pour votre aide, à bientot ;)