roxx78
Messages postés6Date d'inscriptionvendredi 24 février 2006StatutMembreDernière intervention27 février 2006
-
27 févr. 2006 à 14:17
cs_booba27100
Messages postés40Date d'inscriptionmercredi 27 décembre 2000StatutMembreDernière intervention 1 octobre 2010
-
21 juin 2010 à 21:33
Bonjour,
je souhaiterai marqué un temps de pause entre deux instructions.
Pouvez vous m'aider ?
Voici le code :
-------------------------------------------------------------------------------
Private Sub Command10_Click()
cs_eldim
Messages postés956Date d'inscriptionlundi 30 mai 2005StatutMembreDernière intervention21 août 20141 27 févr. 2006 à 15:05
Voila qui te permettra d'exécuter ton programme en attendant la fin :
Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
Declare Function WaitForSingleObject Lib "kernel32" (ByVal hHandle As Long, ByVal dwMilliseconds As Long) As Long
Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
Function ShellAndWait(Appli As String, style As Integer) As Boolean
Dim idProc As Long, hProc As Long, iRet As Long
Dim hNull As Long, R As Boolean
On Error GoTo Er
idProc = Shell(Appli, style)
hProc = OpenProcess(SYNCHRONIZE, False, idProc)
' attendre jusqu'à ce que le process se termine
If hProc <> hNull Then
iRet = WaitForSingleObject(hProc, INFINITE)
CloseHandle hProc
R = True
Else
R = False
End If
Er:
DoEvents
ShellAndWait = R
End Function
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_Julien39
Messages postés6414Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention29 juillet 2020370 8 mai 2010 à 09:27
Je ne me souvenais plus avoir répondu à ce message. Par défaut, l'objet Timer ne permet pas de prendre en compte les temps inférieur à 1ms. Par contre, il y a une API qui s'appelle QueryPerformanceCounter, je pense que tu pourrais t'en sortir avec ca. Si tu ne sais pas comment l'utiliser, cherche de la documentation ou regarde dans mon profil la source qu'il s'appelle étude des fonction aléatoires, je l'ai utilisée ici.
La prochaine fois que tu as une question à poser, je te conseille d'ouvrir un nouveau poste parce que celui là, il a plus de quatre ans, seuls les personnes qui avaient demandé d'être averties de la réponse à cette discution (et qui sont encore en vie) peuvent te répondre.
cs_booba27100
Messages postés40Date d'inscriptionmercredi 27 décembre 2000StatutMembreDernière intervention 1 octobre 2010 21 juin 2010 à 21:33
Moi quand j'utilise :
Call Sleep (1000) ' pour une pause de 1 seconde
Mon programme plante quand même, même pour 10 secondes
J'ai mis un Timer1 à interval 1000
Comment je peux faire une pause dans ma boucle For Next dans que mon programme plante ? Même si je dois utiliser le Timer, ce n'est pas un problème ! .