unguest_online
Messages postés9Date d'inscriptiondimanche 11 février 2018StatutMembreDernière intervention17 février 2018
-
Modifié le 11 févr. 2018 à 19:44
Whismeril
Messages postés18417Date d'inscriptionmardi 11 mars 2003StatutContributeurDernière intervention 5 juin 2023
-
12 févr. 2018 à 21:48
Bonsoir (ou bonjour c'est selon...),
Après insertion d'un Timer dans ma fenêtre Design, je voudrais faire en sorte que :
Timer1.Interval = TrackBar1.Value
Le problème, c'est que ce code ne marche pas, il y aurait eu une erreur avec la valeur 0, pourtant impossible...
Je vous laisse le code source en dessous, merci d'avance à tous ceux qui prendront le temps de m'aider ;)
Public Class Form
Private Sub TrackBar_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TrackBar.Scroll
If TrackBar.Value = 0 Or 1 Then
TrackBar.Value = 1
Timer1.Interval = 1
End If
Timer1.Interval = TrackBar.Value / 2
Label3.Text = TrackBar.Value & " ms"
End Sub
Private Sub LinkLabel1_LinkClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles LinkLabel1.LinkClicked
TextBox1.Clear()
TextBox1.Focus()
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
If Label5.Visible = True Then
Label5.Visible = False
Else
Label5.Visible = True
End If
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Timer1.Start()
End Sub
End Class
Whismeril
Messages postés18417Date d'inscriptionmardi 11 mars 2003StatutContributeurDernière intervention 5 juin 2023624 11 févr. 2018 à 20:48
Bonsoir
je voudrais faire en sorte que :
Timer1.Interval = TrackBar1.Value
Mais dans ton code, quand ça plante.
Timer1.Interval = TrackBar.Value / 2
Je parie (car tu n’as pas précisé ce que vaut TrackBar.Value à ce moment-là) je parie donc, que TrackBar.Value vaut 1.
1/2 = 0.5 casté en Integer (Interval est souvent un Integer selon le type de timer) ça fait 0.
Si mon pari est juste, alors ceci corrigera ton problème.
If TrackBar.Value = 0 Or 1 Then
TrackBar.Value = 1
Timer1.Interval = 1
Else
Timer1.Interval = TrackBar.Value / 2
End IF
Whismeril
Messages postés18417Date d'inscriptionmardi 11 mars 2003StatutContributeurDernière intervention 5 juin 2023624 12 févr. 2018 à 07:50
Hier soir je n’avais pas intégré la remarque (fort judicieuse) de NHenry.
If TrackBar.Value = 0 Or TrackBar.Value = 1 Then
TrackBar.Value = 1
Timer1.Interval = 1
Else
Timer1.Interval = TrackBar.Value / 2
End IF
Ou plus simplement
If TrackBar.Value < 2 Then
TrackBar.Value = 1
Timer1.Interval = 1
Else
Timer1.Interval = TrackBar.Value / 2
End IF