Faire un compte à rebours
Mr_Skkay
Messages postés
81
Date d'inscription
Statut
Membre
Dernière intervention
-
Yoda -
Yoda -
Salut, j'aimerai faire un compte à rebours en Visual Basic, j'ai réussi à en faire un mais pas comme je veux :
Le miens décompte seulement les secondes, c'est à dire que j'entre "x" secondes, puis il fait -1, jusqu'à 0.
Ce que j'aimerai faire, c'est un compte à rebours comme ça :
J'entre "x" heures, "x" minutes, "x" secondes, et qu'il me disent combien d'heures, minutes, secondes il me reste. Mais je ne vois pas trop comment faire... :/
Pour ceux qui sont là parce qu'il recherche comment en faire un qui décompte que les secondes, moi j'ai fait :
Une textBox1 : "j'écris le nbre de secondes"
Un bouton : "je mets le texte de la textBox dans le label1"
-> Label1.Text = TextBox1.Text
Un bouton : "qui démarre le timer"
-> Timer1.Enabled = True
Le timer (avec 1000ms d'intervalle), et dedans je mets :
-> Label1.Text = Label1.Text - 1
If Label1.Text = 0 Then
Timer1.Stop()
End If
Voilà.
Désoler je ne sais pas si il y a, et comment utiliser la balise pour le code.
Le miens décompte seulement les secondes, c'est à dire que j'entre "x" secondes, puis il fait -1, jusqu'à 0.
Ce que j'aimerai faire, c'est un compte à rebours comme ça :
J'entre "x" heures, "x" minutes, "x" secondes, et qu'il me disent combien d'heures, minutes, secondes il me reste. Mais je ne vois pas trop comment faire... :/
Pour ceux qui sont là parce qu'il recherche comment en faire un qui décompte que les secondes, moi j'ai fait :
Une textBox1 : "j'écris le nbre de secondes"
Un bouton : "je mets le texte de la textBox dans le label1"
-> Label1.Text = TextBox1.Text
Un bouton : "qui démarre le timer"
-> Timer1.Enabled = True
Le timer (avec 1000ms d'intervalle), et dedans je mets :
-> Label1.Text = Label1.Text - 1
If Label1.Text = 0 Then
Timer1.Stop()
End If
Voilà.
Désoler je ne sais pas si il y a, et comment utiliser la balise pour le code.
A voir également:
- Musique compte à rebours
- Télécharger musique gratuitement sur pc - Télécharger - Conversion & Extraction
- Créer un compte google - Guide
- Musique audio - Télécharger - Lecture & Playlists
- Installer windows 10 sans compte microsoft - Guide
- Comment créer un compte gmail - Guide
1 réponse
Salut,
Pour réaliser ton compte à rebours, il suffit de gérer les heures minutes et secondes.
dans la procedure timer.tick
A+
Pour réaliser ton compte à rebours, il suffit de gérer les heures minutes et secondes.
'Variables globales
Dim HR As Integer, MN As Integer, SC As Integer
'Initialisation
HR = Val(heures.Text): MN = Val(minutes.Text): SC = Val(secondes.Text)
dans la procedure timer.tick
SC = SC - 1
If SC = -1 Then
SC = 59
MN = MN - 1
End If
If MN = -1 Then
MN = 59
HR = HR - 1
End If
'affichage dans les labels
lb_HR.Caption = Format(HR, "00")
lb_MN.Caption = Format(MN, "00")
lb_SC.Caption = Format(SC, "00")
'verifier sil le decompte est terminé
If HR = 0 And MN = 0 And SC = 0 Then
'arreter le timer
Timer1.Stop
MsgBox "Temps écoulé"
End If
End Sub
A+
Juste pour les variables, j'avais des erreurs :
"Erreur 1 'SC' n'est pas déclaré. Il peut être inaccessible en raison de son niveau de protection."
Je sais pas trop pourquoi, mais j'ai remplacé les variables par les noms des labels, et ça marche parfaitement !
Merci
Edit : Sinon utilisez des NumericUpDown ! Ils sont même mieux :p
Pour l'erreur d'accès aux variables, il faut déclarer les variables globales dans un module (et non dans l'UserForm) afin quelles soient "visibles" dans tout le projet.
En ce qui concerne la saisie des nombres dans un textbox, il faut gérer l'évènement Keypressed.
Mais à ton niveau, il vaut mieux contrôler le contenu des textbox après saisie; par exemple pour les minutes:
A+