[VB.NET] Chronomètre

progra Messages postés 143 Statut Membre -  
lermite222 Messages postés 9042 Statut Contributeur -
Bonjour,

J'ai crée un formulaire VB, et j'aimerais, en haut à gauche, mettre un chronomètre (version MM:SS) pour montrer à l'utilisateur quand est ce que la mise à jour de mes données va se faire (toutes les 2 minutes trentes je pense...).
Il y a bien "timer" qui va me faire le décompte, mais il n'y a pas de chronomètre pour indiquer le temps à l'utilisateur. Que faire ?

--------------------------------------------------------------------------------------------------------------------
« Ce n'est pas tant l'aide de nos amis qui nous aide que notre confiance dans cette aide. » Epicure.

2 réponses

  1. tictac08 Messages postés 22 Statut Membre 56
     
    Besoin

    1 timer
    1 label

    Public Class Form1
    
        Dim maj As Integer = 160 'Ici on indique que la durée demandée est de 160 secondes soit 2 minutes 30 sous le nom de "maj"
        Dim minute As Integer 'Inutile si on veut que sous forme de seconde
    
    
        Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            Timer1.Interval = 1000 'Ici l'intervalle est de 1000 milliseconde soit une seconde
    
            Timer1.Start() 'Je pense que je n'ai pas besoin d'expliquer ici
    
    
    
        End Sub
    
        Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
            'Pour un compte a rebourd
            maj = maj - 1
            If maj = 0 Then
                'Action à effectuer après les 2 minutes 30
                maj = 160 'Réinitialisation du compte a reboud
            End If
    
            'Pour un chronomètre, mettre maj = 0 en haut
            maj = maj + 1
            If maj = 160 Then
                'Action à effectuer après les 2 minutes 30
                maj = 0 'Reinitialisation
            End If
            While maj > 60
                maj = maj - 60
                minute = minute + 1
            End While
    
            Label1.Text = maj.ToString 'Ici on dit que le texte du label sera en faites le nombre de seconde contenu dans maj remis en texte !!UNIQUEMENT LES SECONDES!!
    
            Label1.Text = minute.ToString & ":" & maj 'Ici on dit que il y aura les minutes suivi de ":" et suivi des secondes
        End Sub
    End Class
    
    1
    1. tictac08 Messages postés 22 Statut Membre 56
       
      oups petite erreur, c'est 150 pas 160, sinon c'est 2 minutes 40 secondes (pour "maj")
      0
    2. tictac08 Messages postés 22 Statut Membre 56
       
      Finalement le système minutes secondes ne fonctionne pas comme prevu, je vais voir a ca
      0
  2. lermite222 Messages postés 9042 Statut Contributeur 1 199
     
    Bonjour,
    Un nouveau projet,
    Un Label => Label1
    Un Timer => Enabled = True =>Interval = 1000
    Le code,
    Public Class Form1
        Dim M As Int32
        Dim S As Int32
        Dim T As Int32
        Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            T = 150
        End Sub
    
        Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
            T -= 1
            If T >= 0 Then
                M = Int(T / 60)
                S = T - (M * 60)
                Dim D As New Date(1900, 1, 1, 0, M, S)
                Label1.Text = Format(D, "mm:ss")
            Else
                T = 150
                Stop
                'Code à traiter quand le temps est écouler
            End If
        End Sub
    End Class


    A+
    Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
    Note: Je ne répond pas aux MP pour les questions techniques. Et ma boule de cristal est cassée .
    0