Timer sur VB6 [Résolu]

Signaler
Messages postés
9
Date d'inscription
vendredi 10 octobre 2003
Statut
Membre
Dernière intervention
14 octobre 2005
-
Messages postés
9
Date d'inscription
vendredi 10 octobre 2003
Statut
Membre
Dernière intervention
14 octobre 2005
-
Bonjour,
est ce que quelqu'un connait une solution simple pour créer un temporisateur (Precision 0.1s)?
Merci.

7 réponses

Messages postés
517
Date d'inscription
samedi 3 février 2001
Statut
Modérateur
Dernière intervention
24 octobre 2006
1
'########## Dans un module
Public Type SYSTEMTIME
wYear As Integer
wMonth As Integer
wDayOfWeek As Integer
wDay As Integer
wHour As Integer
wMinute As Integer
wSecond As Integer
wMilliseconds As Integer
End Type

Public Declare Sub GetSystemTime Lib "kernel32" (lpSystemTime As SYSTEMTIME)

'########## Avant ton code
Dim TimeSys As SYSTEMTIME, DecompilationTime As Long
GetSystemTime TimeSys
Dim Hours As Long
Hours = (TimeSys.wMinute + (TimeSys.wHour * 60))
DecompilationTime = TimeSys.wMilliseconds + (TimeSys.wSecond + Hours * 60) * 1000

'########" Code

'######### Après ton code
GetSystemTime TimeSys
Hours = (TimeSys.wMinute + (TimeSys.wHour * 60))
DecompilationTime = Abs(DecompilationTime - (TimeSys.wMilliseconds + (TimeSys.wSecond + Hours * 60) * 1000))


Warning
Admin Codes-Sources.com
http://www.decompiler-vb.net/
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 110 internautes nous ont dit merci ce mois-ci

Messages postés
4030
Date d'inscription
mardi 13 mai 2003
Statut
Modérateur
Dernière intervention
23 décembre 2008
20
En utilisant l'API Sleep





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





Appel :





Sleep 100 ' attend 0.1 seconde




Manu
-------------------------------------------
Une question bien posée, c'est une chance de réponse bien adaptée.
Messages postés
294
Date d'inscription
vendredi 25 février 2005
Statut
Membre
Dernière intervention
9 mars 2006
1
je suis daccord avec Econs, mais, pour quoi faire cette temporisation? parceque sleep, arrête entièrement toute "action" de l'application. pendant ces 0,1 seconde, ton programma doit-il exécuter une action?
Messages postés
9
Date d'inscription
vendredi 10 octobre 2003
Statut
Membre
Dernière intervention
14 octobre 2005

Merci pour la rapidité de la réponse.
Mais, ma question est mal posée. Dan mon appli, j'ai un switch case et sur chaque changement du pointeur, je voudrai lancer un temporisation pour controler depuis combien de temps je suis sur le nouveau case. (Une sorte de time out).
Messages postés
294
Date d'inscription
vendredi 25 février 2005
Statut
Membre
Dernière intervention
9 mars 2006
1
j'avoue que je n'ai pas d'idée. mais, je fouille dans ma bible. si de quoi t'aider, je te fais signe. (sûrment que plus initier t'aidera.)

Mais, aussi, pour quoi O,1 seconde!? pour quoi faire une temporisation pour verifier depuis combien de temps tu es sur le nouveau case, pour quoi ne pas le faire automatiquement. (et moi, quand tu dit depuis combien de temps tu es sur le nouveau case, je pense que tu veux dire, combien de temps tu a passé sur l'ancien case, "si non, je croi que la logique veu que quand tu passe sur un nouvel objet, et après 0,1s tu vex savoir depuis combien de temps tu y es, la reponse est 0,1s". )
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
35
salut,
ta question n'est pas claire.
si le rapport est avec par exemple, la vitesse de calcul du mouvement de la souris (c'est ce que j'en ai compris) et pour répondre à ton idée de timer (qui n'aurait plus aucun intérêt pour autant), alors au mouvement de ta souris, tu met ton Timer enabled = true.

tu as 2 variables ~globales~, disons OldCase et NewCase (pour correspondre à ton SwitchCase)

ton interval est de 100 (donc 0,1s) et dans sa procédure : oldcase = newcase, newcase= ...ce que tu testes (position curseur par exemple).
si old = new then timer=false. voilà l'idée

++
PCPT
Messages postés
9
Date d'inscription
vendredi 10 octobre 2003
Statut
Membre
Dernière intervention
14 octobre 2005

Merci Warning, je vais essayer ta solution qui me semble OK.


Pour répondre à pcpt et p__romeo, je veux savoir combien de temps je reste sur un "Case". En fait, dans ce "Case", j'envois un ordre à un robot et j'attends une réponse de ce robot comme quoi il a bien recu cet ordre. Si au bout d'un temps donné (par exmple 10s) le robot ne m'a rien retourné, je veux alors déclencher une autre action.

La réponse de Warning me semble OK, sinon j'ai vu de mon coté qu'on pouvais utiliser Hitime32.ocx pour gérer des tempos.