OVH Cloud OVH Cloud

[WD9] Attendre

6 réponses
Avatar
HempelIt
Bonjour a tous,

Question bete, existe-t-il sous windev 9 une instruction équivalente à la
commande sleep sous C. L'aide ne dit rien la dessus.

Il s'agit ici, bien sur, d'attendre dans le programme par exemple 1000 ms

Merci

Totophe

6 réponses

Avatar
ManuPavy
HempelIt a écrit :
Bonjour a tous,



Bonjour,

Question bete, existe-t-il sous windev 9 une instruction équivalente à la
commande sleep sous C. L'aide ne dit rien la dessus.

Il s'agit ici, bien sur, d'attendre dans le programme par exemple 1000 ms



Voir dans l'aide au niveau de TimerSys si je n'm'abuse ; mais ce n'est
pas aussi immédiat qu'en C il me semble.


--
Manu
Avatar
Sécurité Pointage & Biométrie
> Question bete, existe-t-il sous windev 9 une instruction équivalente à la
commande sleep sous C. L'aide ne dit rien la dessus.
Il s'agit ici, bien sur, d'attendre dans le programme par exemple 1000 ms



Bonjour,

Oui : Multitache("NbDeCentièmesDeSeconde")

Sincères salutations

--
Jean-Claude FLAJOULOT
Avatar
Sécurité Pointage & Biométrie
"Sécurité Pointage & Biométrie" a écrit dans le message
de news: do6lku$fed$
Question bete, existe-t-il sous windev 9 une instruction équivalente à la
commande sleep sous C. L'aide ne dit rien la dessus.
Il s'agit ici, bien sur, d'attendre dans le programme par exemple 1000 ms





Bonjour,

Vous pouvez également passer par une API et faire :

eMilliseconds est un entier

API("KERNEL32","Sleep",eMilliseconds)

Sincères salutations

--
Jean-Claude FLAJOULOT
Avatar
Sécurité Pointage & Biométrie
> HempelIt a écrit :
Bonjour a tous,



Bonjour,

Question bete, existe-t-il sous windev 9 une instruction équivalente à la
commande sleep sous C. L'aide ne dit rien la dessus.

Il s'agit ici, bien sur, d'attendre dans le programme par exemple 1000 ms



Voir dans l'aide au niveau de TimerSys si je n'm'abuse ; mais ce n'est pas
aussi immédiat qu'en C il me semble.



Bonjour,

Je ne pense pas que cela répond à la question posée.

TimerSys lance l'exécution d'une procédure à intervalles réguliers et
programmés, mais pas un temps d'attente.
TimerSys(<Nom de la procédure>, <Fréquence> [, <NuméroDuTimer>])

Sincères salutations
--
Jean-Claude FLAJOULOT
Avatar
HempelIt
Et bien merci a tous ...

Totophe

"Sécurité Pointage & Biométrie" a écrit dans le message
de news: do6m2h$fo5$

"Sécurité Pointage & Biométrie" a écrit dans le message
de news: do6lku$fed$
Question bete, existe-t-il sous windev 9 une instruction équivalente à
la commande sleep sous C. L'aide ne dit rien la dessus.
Il s'agit ici, bien sur, d'attendre dans le programme par exemple 1000
ms





Bonjour,

Vous pouvez également passer par une API et faire :

eMilliseconds est un entier

API("KERNEL32","Sleep",eMilliseconds)

Sincères salutations

--
Jean-Claude FLAJOULOT




Avatar
ManuPavy
Sécurité Pointage & Biométrie a écrit :
HempelIt a écrit :

Bonjour a tous,



Bonjour,


Question bete, existe-t-il sous windev 9 une instruction équivalente à la
commande sleep sous C. L'aide ne dit rien la dessus.

Il s'agit ici, bien sur, d'attendre dans le programme par exemple 1000 ms



Voir dans l'aide au niveau de TimerSys si je n'm'abuse ; mais ce n'est pas
aussi immédiat qu'en C il me semble.




Bonjour,

Je ne pense pas que cela répond à la question posée.

TimerSys lance l'exécution d'une procédure à intervalles réguliers et
programmés, mais pas un temps d'attente.
TimerSys(<Nom de la procédure>, <Fréquence> [, <NuméroDuTimer>])



Oui, effectivement, je donnais ca de tete, désolé pour la fausse info.
Mais en fait, c'est pas tout à fait faux : c'est dû à un pb perso :
lorsque j ai essayé multitache, j avais un probleme à cause des boites
de dialogue (parce que j utilisais d autre TimerSys, justement je crois)
Si la fonction TimerSys est utilisée dans le traitement d'ouverture du projet et si aucune fenêtre n'est ouverte, le timer sera valide sur tout le projet. Il est en attente et sera déclenché automatiquement dès qu'une fenêtre sera ouverte ou lors des appels à la fonction Multitache.


or
Un timer n'est pas bloqué par l'ouverture des menus, l'ouverture d'une fenêtre, l'ouverture des fenêtres des fonctionsAvertissement,Confirmer,Erreur,Info,OKAnnuler etOuiNon.



du coup j ai codé autrement, en prenant le timerSys :


// Faire apparaitre une image au bout de 5s :

Evénement("ReinitialiseTimetout","*.*",513)
Evénement("ReinitialiseTimetout","*.*",256)
Evénement("ReinitialiseTimetout","*.*",516)
TimerSys("FinTimeout",HeureVersEntier("00000100"), 442)


PROCEDURE ReinitialiseTimetout()

TimeOut=HeureSys()
PROCEDURE FinTimeOut()

SI HeureVersEntier(HeureSys()) - HeureVersEntier(TimeOut) >
HeureVersEntier("00000500") ALORS
Image1..Visible = Vrai
FIN


Si quelqu un a des remarques, elles sont bienvenues.

--
Manu