Timer sous VB

parisbrest -  
 TROLL -
Bonjour,

J'essaye de m'initier à VB, et dans le but de créer un chronomètre il faut que j'utilise un timer. Pourriez-vous m'aider à voir plus clair dans la marche à suivre? Faut -il déclarer le timer dans une procédure à part ou est-ce possible de le lancer avec un clic sur un "button"?

merci d'avance!
A voir également:

6 réponses

guy2mars Messages postés 204 Date d'inscription   Statut Membre Dernière intervention   71
 
c est comme tu veux..
le timer se declenche quand tu lis la ligne.
le timer lit l'heure en secondes et fractions de secondes
tu declares 3 variables par ex
dim start, fin, duree
duree = 90 'pour 90 secondes
start = timer 'tu demarres
tu peux mettre ca en nombre entier
start = int(start)
tu lances tes machins a faire
do while timer <start+pause
ploum ploum ploum
do events 'pour rattraper le coup
loop
msgbon fin & "secondes","",1


et voila, tu as un compte a rebours :o))
4
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
Bonjour,
Par défaut, un Timer (en VB6) est avec sa propriéré Enabled = False, faut la mettre à True.
Mais j'hésite à savoir si tu est sur Vb ou sur VBA (excel) ?
Si c'est en VBA Voir ici

A+
2
parisbrest
 
merci pour l'explication!

Il me reste cependant une question: si je veux afficher la durée du timer dans un "msgbox" comment je puis-je faire?
Est ce que timer est une variable que l'on peut afficher? Si oui quel est son type?
1
guy2mars Messages postés 204 Date d'inscription   Statut Membre Dernière intervention   71
 
timer n est pas une variable. c est je pense une fonction prdefinie.
si tu affiches timer, il affichera l'heure traduite en secondes lors de l'affichage
pour la reactualiser, il faudra boucler

tu peux afficher une variable partout, meme dans le titre ou sujet d'un msgbox

dim variable
variable = "texte a afficher selon mes criteres"

msgbox "je peux afficher" & variable & "suite du commentaire","titre de la box",1
1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
parisbrest
 
C'est bien ce que j'ai voulu faire, mais le compteur reste bloqué à zéro...
Voici ce que j'ai fait:

Public Class Form1

Dim tps As Integer

Private Sub Button1_Click

Timer1.Interval = 10000
Timer1.Start()

End Sub

Private Sub Timer1_Tick

tps = tps + 1
TextBox1.Text = Str(tps)

End Sub

End Class



Je me demande si je n'ai pas déclaré des choses au mauvais endroit! Ou faut-il indiquer la fréquence du timer?
1
GROLL
 
tu doi changé Timer1.Interval = 1000 é non pa 10000
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
1 et 3 mois plus tard ...

ça va bien l'aider ça ^^

Même dans le pseudo y a une faute ... c'est "T" !!! pas "G" ...

;o)
0
TROLL
 
1 an plus tard, lol Polux, suffit de voir son orthographe c'est pas un troll :ok:
0
guy2mars Messages postés 204 Date d'inscription   Statut Membre Dernière intervention   71
 
Sub Macro1()
Dim Start, Finish, duree, i, reponse, gagne, il_reste

duree = 120 ' durée 2 minutes.
Start = Timer ' top
Finish = Start + duree

Do While Timer < Finish
il_reste = int(Finish - Timer)
MsgBox "Le temps passe", 0, "il reste " & il_reste & " secondes avant la fin"
DoEvents ' Donne le contrôle à d'autres processus.
Loop

End Sub

tu as de ton cote des end sub sans sub, et des timer1 non decrits.
quant a timer1.start(), je connais pas mais ca peut exister
@+
1