Slt, j'ai besoin d'un code pour faire remplir en progressbar pgb à partir d'un timer t en l'intervalle de 59 secondes.
Merci d'avance
TM018
Slt, j'ai besoin d'un code pour faire remplir en progressbar pgb à partir d'un timer t en l'intervalle de 59 secondes.
Merci d'avance
TM018
Ou en es tu dans tes recherches ? As tu essayé d'écrire un peu de code ? As tu regardé l'aide de VB ?
Bon je vais un peu vous aider :
Donc j'ai ceci :
Il contient donc : label1 , timer1, command1 et progressbar1
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 Dim a As Long Private Sub Command1_Click() Timer1.Enabled = True End Sub Private Sub Form_Load() Timer1.Enabled = False 'Timer n'est pas actif Label1.Caption = 0 Timer1.Interval = 1000 '1000 = 1 sec ProgressBar1.Min = 0 ProgressBar1.Max = 50 End Sub Private Sub Timer1_Timer() a = a + 1 Label1.Caption = a If a = 50 Then Timer1.Enabled = False 'quand a = 50 timer1 n'est plus actif car ProgressBar1.Max = 50 ProgressBar1.Value = Label1.Caption '= a (ça marche aussi) End Sub
A toi de faire évoluer![]()
Il doit y avoir une propriété Value ou Position ou quelque chose s'y rapprochant à l'objet ProgressBar... En lui donnant la valeur de i, ça devrait marcher.
Oui tu as raison zazaraignée
mais j'ai préciser que proressbar et entre 0 et 50 (
et
Code : Sélectionner tout - Visualiser dans une fenêtre à part progressbar1.min = 0
)
Code : Sélectionner tout - Visualiser dans une fenêtre à part progressbar1.max= 50
et "a" ne devrait pas dépasser 50 et ne devrait pas descendre en dessous de 0 ..... sinon ça créer un problème....
avec mon code :
enfait tu peux mettre
et
Code : Sélectionner tout - Visualiser dans une fenêtre à part progressbar.max=100
et puis tu règles ton intervalle
Code : Sélectionner tout - Visualiser dans une fenêtre à part If a = 10 Then Timer1.Enabled = False
soit 1000 = 1 seconde![]()
Bonsoir,
Un Timer n'est jamais précis (le faire battre 59 fois à 1 seconde ne vous donnera jamais 59 secondes en durée réelle...)
Il y a alors une façon de le forcer à être précis ...
La suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 Private Sub Command2_Click() Timer1.Interval = 1000 Timer1.Enabled = True ProgressBar1.Max = 59 ProgressBar1.Min = 0 End Sub Private Sub Timer1_Timer() Static depart As Date If depart = 0 Then depart = Time While Time < DateAdd("s", 59, depart) ProgressBar1.Value = ProgressBar1.Value + 1 Exit Sub Wend Timer1.Enabled = False MsgBox "j'ai réellement duré " & DateDiff("s", depart, Time) & " secondes" End Sub
Partager