Comment faire un délai en VB6

Signaler
Messages postés
43
Date d'inscription
mardi 15 juillet 2003
Statut
Membre
Dernière intervention
7 novembre 2006
-
Messages postés
5
Date d'inscription
dimanche 31 octobre 2004
Statut
Membre
Dernière intervention
13 janvier 2005
-
je voudrais pouvoir lancer une instruction, attendre quelques secondes en lancer une autre attendre.... et ainsi de suite pour interragire avec un logiciel assez lent.
merci de votre aide.
Pascal

6 réponses

Messages postés
2835
Date d'inscription
lundi 11 août 2003
Statut
Modérateur
Dernière intervention
16 décembre 2006
10
:big) Neodante :big)

API Sleep:

Declare Sub Sleep Lib "kernel32" Alias "Sleep" (ByVal dwMilliseconds As Long)

Y a plus qu'à mettre le nombre de millisecondes ...
@+
Messages postés
939
Date d'inscription
vendredi 25 octobre 2002
Statut
Membre
Dernière intervention
27 janvier 2009
2
et si tu veux pas que ton prog se fige :

Private Declare Function GetTickCount Lib "kernel32" () As Long

'fonction pour xxx millisecondes
Public Function hb_sleep(millisecondes As Long)
Dim attente As Long
attente = GetTickCount + millisecondes
Do Until GetTickCount >= attente
DoEvents
Loop
End Function

tu appeles ensuite la fonction comme ceci :

hb_sleep(xxx)

ou xxx est le nbr de millisecondes de la pause necessaire

mais ca bouffe de la ressource vu que boucle infini ^^

Hvb aka Batto
Messages postés
939
Date d'inscription
vendredi 25 octobre 2002
Statut
Membre
Dernière intervention
27 janvier 2009
2
infinie... jusqu'a la fin de la pause lol...

et declare le en sub et pas en tant que function comme je l'ai ecrit...
etant donné qu'elle ne revoit rien, c'est plus propre. (j'ai betement copier un vieux code que j'ai posté ici)

Hvb aka Batto
Messages postés
43
Date d'inscription
mardi 15 juillet 2003
Statut
Membre
Dernière intervention
7 novembre 2006

merci a vous deux
je vais essayer
Pascal
Messages postés
2835
Date d'inscription
lundi 11 août 2003
Statut
Modérateur
Dernière intervention
16 décembre 2006
10
:big) Neodante :big)

You're welcome !!!
@+
Messages postés
5
Date d'inscription
dimanche 31 octobre 2004
Statut
Membre
Dernière intervention
13 janvier 2005

Salut,

Si ça peut t'aider, je me suis inventé une petite fonction:

Public Function fDoWait(intPause As Integer)
'*************************************
' Pause de ? seconds en cas de besoin...
'*************************************
Dim intDureePause As Integer
Dim lngDebut As Long

intDureePause = intPause
lngDebut = Timer
Do While Timer < lngDebut + intDureePause
DoEvents
Loop

End Function

Fortuel